原题链接:蓝桥杯历届试题-回文数字
解题思路:
5位或6位的截取一般都是3位数: 循环次数为 (29)*2 = 58
分别查找5位或6位满足的3位数,找到则计数器加1; 最后判断计数器若为0,则输出-1.
注意事项:
参考代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | import java.util.Scanner; public class C1434 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { F(sc.nextInt()); } sc.close(); } private static void F( int n){ int count = 0 ; //5位或6位的截取一般都是3位数: 循环次数为 (29)*2 = 58 //寻找5位的 for ( int a = 1 ; a <= 9 ; a++){ for ( int b = 0 ; b <= 9 ; b++){ for ( int c = 0 ; c <= 9 ; c++){ if ( 2 *a + 2 *b + c == n){ System.out.println( "" + a + b + c + b + a); count++; } } } } //寻找6位的 for ( int a = 1 ; a <= 9 ; a++){ for ( int b = 0 ; b <= 9 ; b++){ for ( int c = 0 ; c <= 9 ; c++){ if ( 2 *(a+b+c) == n){ System.out.println( "" + a + b + c + c + b + a); count++; } } } } if (count == 0 ) System.out.println(- 1 ); } } |
9.9 分
9 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复