蓝桥杯——BASIC-9——基础练习 特殊回文数

举报
fightingn 发表于 2022/03/16 16:47:40 2022/03/16
【摘要】 资源限制:时间限制:1.0s   内存限制:512.0MB问题描述:  123321是一个非常特殊的数,它从左边读和从右边读是一样的。  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。输入格式:  输入一行,包含一个正整数n。输出格式:  按从小到大的顺序输出满足条件的整数,每个整数占一行。样例输入:52样例输出:899998989989998899数据规...
资源限制:
时间限制:1.0s   内存限制:512.0MB
问题描述:
  123321是一个非常特殊的数,它从左边读和从右边读是一样的。
  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
输入格式:
  输入一行,包含一个正整数n。
输出格式:
  按从小到大的顺序输出满足条件的整数,每个整数占一行。
样例输入:
52
样例输出:
899998
989989
998899
数据规模和约定:
  1<=n<=54。
代码如下:

import java.util.*;
 
public class Main
{
    public static void main(String args[])
    {
      Scanner scanner = new Scanner(System.in);
		int n = scanner.nextInt();
		for(int i = 10000; i <= 999999; i++) {
			if (i < 100000) {
				int g = i / 1 % 10;			//个位数字
				int s = i / 10 % 10;		//十位数字
				int b = i / 100 % 10;		//百位数字
				int q = i / 1000 % 10;		//千位数字
				int w = i / 10000 % 10;		//万位数字
				if (g == w && s == q && g+s+b+q+w == n) {
					System.out.println(i);
				}
			}else {
				int g = i / 1 % 10;			//个位数字
				int s = i / 10 % 10;		//十位数字
				int b = i / 100 % 10;		//百位数字
				int q = i / 1000 % 10;		//千位数字
				int w = i / 10000 % 10;		//万位数字
				int sw = i / 100000 % 10;		//十万位数字
				if (g == sw && s == w && b == q && g+s+b+q+w+sw == n) {
					System.out.println(i);
				}
			}			
		}
    }
}

运行结果如下:

系统评测结果:


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。