蓝桥杯历届试题 回文数字
来源:互联网 发布:阿迪达斯沐浴露 知乎 编辑:程序博客网 时间:2024/05/13 22:58
问题描述
观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的。这样的数字叫做:回文数字。
本题要求你找到一些5位或6位的十进制数字。满足如下要求:
该数字的各个数位之和等于输入的整数。
本题要求你找到一些5位或6位的十进制数字。满足如下要求:
该数字的各个数位之和等于输入的整数。
输入格式
一个正整数 n (10<n<100), 表示要求满足的数位和。
输出格式
若干行,每行包含一个满足要求的5位或6位整数。
数字按从小到大的顺序排列。
如果没有满足条件的,输出:-1
数字按从小到大的顺序排列。
如果没有满足条件的,输出:-1
样例输入
44
样例输出
99899
499994
589985
598895
679976
688886
697796
769967
778877
787787
796697
859958
868868
877778
886688
895598
949949
958859
967769
976679
985589
994499
499994
589985
598895
679976
688886
697796
769967
778877
787787
796697
859958
868868
877778
886688
895598
949949
958859
967769
976679
985589
994499
样例输入
60
样例输出
-1
#include <iostream>
using namespace std;
int main()
{
int n,flag=0;
cin>>n;
for(int cnt=10001;cnt<=999999;cnt++)
{
int temp=cnt,sum=0,t=0,P[6],i;
while(temp!=0)
{
P[t]=temp%10;
temp=temp/10;
sum=sum+P[t];
t++;
}
if(sum!=n)
continue;
for(i=0;i<=(t-1)/2;i++)
if(P[i]!=P[t-1-i])
break;
if(i<=(t-1)/2)
continue;
else
{
cout<<cnt<<endl;
flag=1;
}
}
if(flag==0)
cout<<"-1"<<endl;
return 0;
}
using namespace std;
int main()
{
int n,flag=0;
cin>>n;
for(int cnt=10001;cnt<=999999;cnt++)
{
int temp=cnt,sum=0,t=0,P[6],i;
while(temp!=0)
{
P[t]=temp%10;
temp=temp/10;
sum=sum+P[t];
t++;
}
if(sum!=n)
continue;
for(i=0;i<=(t-1)/2;i++)
if(P[i]!=P[t-1-i])
break;
if(i<=(t-1)/2)
continue;
else
{
cout<<cnt<<endl;
flag=1;
}
}
if(flag==0)
cout<<"-1"<<endl;
return 0;
}
0 0
- 蓝桥杯历届试题 回文数字
- 蓝桥杯 历届试题 回文数字
- 蓝桥杯 历届试题 回文数字
- 蓝桥杯 历届试题 回文数字
- 蓝桥杯历届试题 回文数字
- 蓝桥杯 历届试题 回文数字
- 蓝桥杯 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 【历届试题】回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- 历届试题 回文数字
- linux 编译c++并运行
- Starting nagios:This account is currently not available.
- CCF计算机软件能力认证考试-201412-2-Z字形扫描
- VLC组播与接收
- 关于android添加lib库时保存后出现红色叉叉的原因
- 蓝桥杯历届试题 回文数字
- 佈局管理2
- 右儒五十三家,八百三十六篇
- 利用RTP进行组播
- Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明
- css3 大于号
- css float 经验分享
- 在IOS APP中反复打开和关闭Unity页面
- 佈局管理