• [蓝桥] 基础练习 特殊回文数


    问题描述

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

    输入格式

    输入一行,包含一个正整数n。

    输出格式

    按从小到大的顺序输出满足条件的整数,每个整数占一行。

    样例输入

    52

    样例输出

    899998
    989989
    998899

    数据规模和约定

    1<=n<=54。

    方法1:

     1 import java.util.Scanner;
     2 
     3 public class Main {
     4     public static void main(String[] args) {
     5         Scanner scanner = new Scanner(System.in);
     6         int n = scanner.nextInt();
     7         long sum;
     8         for(int i = 1;i <= 9;i++)
     9             for(int j = 0;j <= 9;j++)
    10                 for(int k = 0;k <= 9;k++)
    11                     if(2 * (i + j) + k == n) {
    12                         sum = i * 10001 + j * 1010 + k * 100;
    13                         System.out.println(sum);
    14                     }
    15         for(int i = 1;i <= 9;i++)
    16             for(int j = 0;j <= 9;j++)
    17                 for(int k = 0;k <= 9;k++)
    18                     if(2 * (i + j + k) == n) {
    19                         sum = i * 100001 + j * 10010 + k * 1100;
    20                         System.out.println(sum);
    21                     }
    22     }
    23 }

    方法2:

     1 import java.util.Scanner;
     2 
     3 public class Main {
     4     public static void main(String[] args) {
     5         Scanner scanner = new Scanner(System.in);
     6         int n = scanner.nextInt();
     7         int[] arr = new int[6];
     8         for(int i=10001;i<=99999;i++) {
     9             int t = 0;
    10             int s = i;
    11             while(s != 0) {
    12                 arr[t++] = s % 10;
    13                 s /= 10;
    14             }
    15             int sum = 0;
    16             for(int j = 0;j < 5;j++) {
    17                 sum += arr[j];
    18             }
    19             if(sum == n) {
    20                 int j;
    21                 for(j = 0;j < 3;j++) {
    22                     if(arr[j] != arr[4-j])
    23                         break;
    24                 }
    25                 if(j == 3) {
    26                     for(int k = 0;k < 5 ;k++) {
    27                         System.out.print(arr[k]);
    28                     }
    29                     System.out.println();
    30                 }
    31             }
    32         }
    33         for(int i = 100001;i <= 999999;i++) {
    34             int t = 0;
    35             int s = i;
    36             while(s != 0) {
    37                 arr[t++] = s % 10;
    38                 s /= 10;
    39             }
    40             int sum = 0;
    41             for(int j = 0;j < 6;j++) {
    42                 sum += arr[j];
    43             }
    44             if(sum == n) {
    45                 int j;
    46                 for(j = 0;j < 4;j++) {
    47                     if(arr[j] != arr[5-j])
    48                         break;
    49                 }
    50                 if(j == 4) {
    51                     for(int k = 0;k < 6 ;k++) {
    52                         System.out.print(arr[k]);
    53                     }
    54                     System.out.println();
    55                 }
    56             }
    57         }
    58     }
    59 }
  • 相关阅读:
    阅读笔记——增强学习3
    阅读笔记——增强学习2
    阅读笔记——增强学习1
    阅读笔记十六
    阅读笔记十五
    MVC实例应用模式
    MVC浅谈
    设计模式理解
    某系统质量属性设计实现详述
    《大型网站架构》浅读有感
  • 原文地址:https://www.cnblogs.com/youpeng/p/10349040.html
Copyright © 2020-2023  润新知