解题思路:提交一波 代为保存

考虑n=12 的情况下

033330算回文

注意事项:

参考代码:

#include<stdio.h>
int count;
int n;
int a[5],b[6],c[10000];
void jizhi_f(){
 c[count++]=a[1]*10000+a[2]*1000+a[3]*100+a[2]*10+a[1];
}
void jizhi_s(){
 c[count++]=b[1]*100000+b[2]*10000+b[3]*1000+b[3]*100+b[2]*10+b[1];
}
void jiwu(){
 int i=0,t;
 a[3]=n-2;
 a[1]=1;
 a[2]=0;
 while(a[3]>9){
  a[3]-=2;
  a[2]+=1;
 }
 while(a[2]>9){
  a[2]--;
  a[1]++;
 }
 //printf("\n%d %d  %d\n\n",a[1],a[2],a[3]);
 jizhi_f();
 while(a[3]>0){
  while(a[2]>0 && a[1]<9){
   a[2]--;
   a[1]++;
   jizhi_f();
  }
  a[3]-=4;
  t=(n-a[3])/2;
  a[2]=t-1;
  a[1]=1;
  while(a[2]>9){
   a[2]--;
   a[1]++;
  }
  if(a[1]>9 || a[3]<0){
   return ;
  }
  jizhi_f();
 }
}
void jiliu(){
 int i,t;
 t=n/2;
 b[1]=0;b[2]=0;b[3]=t;
 while(b[3]>9){
  b[3]--;
  b[2]++;
 }
 while(b[2]>9){
  b[2]--;
  b[1]++;
 }
 jizhi_s();
 while(b[1]<=9 ){
  while(b[2]<9 && b[3]>0){
   b[3]--;
   b[2]++;
   jizhi_s();
   //printf("%d %d %d\n",b[1],b[2],b[3]);
  }
  b[1]++;
  if(b[1]>9){
   return ;
  }
  t=(n-2*b[1])/2;
  if(t<0){
   return ;
  }
  b[3]=t;
  b[2]=0;
  while(b[3]>9){
   b[3]--;
   b[2]++;
  }
  if(b[2]>9){
   return ;
  }
  jizhi_s();
 } 
}
void sort(){
 int i,j,k;
 for(i=0;i<count-1;i++){
  for(j=i+1;j<count;j++){
   if(c[i]>c[j]){
    k=c[i];
    c[i]=c[j];
    c[j]=k;
   }
  }
 }
}
int main(){
 count=0;
 scanf("%d",&n);
 if(n<10 || n>100){
  return ;
 }
 if(n>54){
  printf("-1\n");
  return ;
 }
 if(n%2==1){
  if(n<=45){
   jiwu();  
  }
  else{
   printf("-1\n");
   return ;
  }
 }
 else if(n%2==0){
  if(n>45&&n<=54){
      jiliu();   
  }
  else if( n<45){
   jiwu();
   jiliu();  
        }
 }
 sort();
 int i;
 //printf("%d\n",count);
 for(i=0;i<count;i++){
//  if(c[i]%10==0){
//   printf("%06d\n",c[i]);
//  }
//  else{
//   printf("%d\n",c[i]);  
//  }
        printf("%d\n",c[i]);
 }
 return 0;
}

点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论