地址:http://hustoj.sinaapp.com/problem.php?id=1824
枚举,借用了“回文平方数”里的一些函数
1 #include<stdio.h> 2 #include<string.h> 3 4 char a[400]; 5 int n,s; 6 7 int exam() 8 { 9 int p1=0,p2=(int)strlen(a)-1; 10 while(p1<p2) 11 { 12 if(a[p1]!=a[p2]) {return 0;break;} 13 p1++; 14 p2--; 15 } 16 return 1; 17 } 18 19 void convert(int x,int b) 20 { 21 int i=0,n; 22 memset(a,0,400*sizeof(char)); 23 n=x; 24 while(n!=0) 25 { 26 if(n%b<10) a[i]=n%b+48; 27 else a[i]=n%b+55; 28 n=n/b; 29 i++; 30 } 31 a[i]='\0'; 32 } 33 34 int main() 35 { 36 int i,j,count; 37 scanf("%d %d",&n,&s); 38 for(i=s+1;n>0;i++) 39 { 40 count=2; 41 for(j=2;j<=10 && count>0;j++) 42 { 43 convert(i,j); 44 if(exam()) count--; 45 } 46 if(!count) 47 { 48 n--; 49 printf("%d\n",i); 50 } 51 } 52 return 0; 53 }