基础练习 特殊回文数
2016-02-10 19:34
225 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/fxh_ujn/article/details/50650121
问题描述
123321是一个非常特殊的数,它从左边读和从右边读是一样的。
输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式 输入一行,包含一个正整数n。 输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998
989989
998899 数据规模和约定 1<=n<=54。
输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。 输入格式 输入一行,包含一个正整数n。 输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。 样例输入 52 样例输出 899998
989989
998899 数据规模和约定 1<=n<=54。
源代码 |
1
#include<iostream>2 using namespace std;3 int main()4 {5 int n,i;6 int a[5];7 3ff7 int b[6];8 cin>>n;9 for(i=10000;i<100000;i++)10 { a[0]=i/10000;11 a[1]=i/1000%10;12 a[2]=i/100%10;13 a[3]=i/10%10;14 a[4]=i%10;15 if(a[0]+a[1]+a[2]+a[3]+a[4]==n&&a[0]==a[4]&&a[1]==a[3])16 cout<<i<<endl;}17 for(i=100000;i<1000000;i++)18 { b[0]=i/100000;19 b[1]=i/10000%10;20 b[2]=i/1000%10;21 b[3]=i/100%10;22 b[4]=i/10%10;23 b[5]=i%10;24 if(b[0]+b[1]+b[2]+b[3]+b[4]+b[5]==n&&b[0]==b[5]&&b[1]==b[4]&&b[2]==b[3])25 cout<<i<<endl< 4000 /span>;}26 return 0;27 } |