BASIC-9 特殊回文数
- 问题描述
123321是一个非常特殊的数,它从左边读和从右边读是一样的。
输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
- 输入
输入一行,包含一个正整数n。
- 输出
按从小到大的顺序输出满足条件的整数,每个整数占一行。
- 输入样例
52
- 输出样例
899998
989989
998899
数据规模和约定 1<=n<=54。
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main(){
int n;
scanf("%d",&n);
for(int i = 10000;i < 1000000;i++){
string s = "";
int num = i;
int sum = 0;
while(num != 0){
sum += (num % 10);
int h = num%10;
s += ('0' + h);
num = num / 10;
}
string a = s;
reverse(s.begin(),s.end());
if(sum == n && a == s) cout<<i<<endl;
}
return 0;
}