南桥训练BASIC-8 特殊回文数

问题描述

  123321是一个非常特殊的数,它从左边读和从右边读是一样的。
  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。

数据规模和约定

  1<=n<=54。

解题思路:

       该题为入门循环判断题,考查写题者对基础循环与判断的掌握程度。

       对不同位数的数进行不同循环,对数先判断其是否为回文数再进行判断是否各位置数相加为n。

#include<bits/stdc++.h>
#define X 10000
#define Y 100000
#define Z 1000000
int main()
{
	int i,n;
	scanf("%d",&n);
	for(i=X;i<Y;i++)
		if(i/10000==i%10&&i/1000%10==i/10%10)//回文数判断 
			if(i/10000+i/1000%10+i/100%10+i/10%10+i%10==n)//求和判断 
				printf("%d\n",i);
	for(i=Y;i<Z;i++)
		if(i/100000==i%10&&i/10000%10==i/10%10&&i/1000%10==i/100%10)//回文数判断 
			if(i/100000+i%10+i/10000%10+i/10%10+i/1000%10+i/100%10==n)//求和判断 
				printf("%d\n",i);
	return 0; 
}

 

上一篇:152Echarts - 旭日图(Basic Sunburst)


下一篇:蓝桥杯 BASIC-1 闰年判断