特殊回文数字

是今天训练的一道水题,据说也是某届蓝桥杯赛题。

【题目描述】

输入一个数字n

输出五位数及六位数的回文数字(正读的数字与反读的数字相同),要求输出的数字各个位上的和等于n

 

思路寻常,比较简单呀。

AC代码:

#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
    int n,i;
    int a,b,c,d,e,f;
    scanf("%d",&n);
    for(i=10000;i<=99999;i++)
    {
        a=i%10;
        b=(i/10)%10;
        c=(i/100)%10;
        d=(i/1000)%10;
        e=(i/10000)%10;
        if((a*10+b==e*10+d)&&(a+b+c+d+e==n))
            printf("%d\n",i);
    }
    for(i=100000;i<=999999;i++)
    {
        a=i%10;
        b=(i/10)%10;
        c=(i/100)%10;
        d=(i/1000)%10;
        e=(i/10000)%10;
        f=(i/100000)%10;
        if((a*100+b*10+c==f*100+e*10+d)&&(a+b+c+d+e+f==n))
            printf("%d\n",i);
    }
return 0;
}
posted @ 2019-03-09 23:32  ACMer123  阅读(199)  评论(0编辑  收藏  举报