问题描述
1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。
输出格式
按从小到大的顺序输出满足条件的四位十进制数。
提示
解法一用来解所有适合的数,如果题目是输出5位数,就加3重循环。
解法一:
//偶数位回文数 4位
#include<stdio.h>
main()
{
int a,b,i;
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
{
printf("%d%d%d%d\n",a,b,b,a);
}
return 0;
}
//奇数位回文数 5位
for(a=1;a<=9;a++)
for(b=0;b<=9;b++)
for(c=0;c<=9;c++)
{
if(n==2*a+2*b+c)
printf("%d%d%d%d%d\n",a,b,c,b,a);
}
解法二:
暴力求解,搜索出答案。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int nu=0;
for(int i=1000;i<9999;i++)
{
int x=i/1000;
int y=i/100;
int z=i/10;
if(x==(i-z*10))
{
if(y-x*10== z-y*10)
cout<<i<<" ";
}
}
}