您的位置:首页 > 其它

4000 蓝桥杯-BASIC-8 特殊回文数

2018-02-23 15:59 281 查看
时间限制:1.0s   内存限制:512.0MB
问题描述  123321是一个非常特殊的数,它从左边读和从右边读是一样的。
  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。输入格式  输入一行,包含一个正整数n。输出格式  按从小到大的顺序输出满足条件的整数,每个整数占一行。样例输入52样例输出899998
989989
998899数据规模和约定  1<=n<=54。

思路: 首先观察题目,要求输出五位和六位回文数,再次,按从小到大输出,重点在判断回文,分离个位数。
#include <stdio.h>
int main(){
int n;
int i;
scanf("%d",&n);
for( i=10000;i<=999999;i++){
if(i<=99999){
int a,b,c,d,e;
int tmp;
tmp=i;
a=tmp/10000;
b=tmp%10000/1000;
c=tmp/100%10;
d=tmp/10%10;
e=tmp%10;
if(a+b+c+d+e==n&&a==e&&b==d){
printf("%d\n",i);
}
}
else if(i<=999999){
int a,b,c,d,e,f;
int tmp;
tmp=i;
a= tmp/100000;
b=tmp/10000%10;
c=tmp/1000%10;
d=tmp/100%10;
e=tmp/10%10;
f=tmp%10;
if(a+b+c+d+e+f==n&&a==f&&b==e&&c==d){
printf("%d\n",i);
}
}

}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: