View Code of Problem 92

#include <stdio.h>
#include <math.h>
using namespace std;
int arr[10000];
int main(){
	int m,n;
	scanf("%d%d", &m, &n );
	int j = 0;
	for( int i=m; i<=n; i++ ){
		int flag = 0;
		int mask =1;
		int a=i,b = i;
		while( b>9 ){
			mask *= 10;
			b /= 10;
		}
		int sum = 0;
		int cnt = 1;
		while( mask>0 ){
			int d = a/mask;
			sum += d*cnt;
			cnt *= 10;
			a %= mask;
			mask /= 10;
			
		}
		if( i== sum ){
			flag =1;
		}else{
			continue;
		}
		
		int flag1 = 1;
		for( int k=2; k<=sqrt(i); k++){
			if( i%k == 0 ){
				flag1 = 0;
				break;
			}
		}
		if( flag && flag1 ){
			arr[j++] = i;
		}
	}
	for( int i=0; i<j; i++ ){
			printf("%6d", arr[i]);
			if( i==j-1){
				printf("\n");
			}else if((i+1)%5==0){
				printf("\n");
			}else if( (i+1)%5 ){
				printf(" ");
			}
		}
		

	return 0;
	
}

Double click to view unformatted code.


Back to problem 92