首页 > 试题广场 >

回文对称数

[编程题]回文对称数
  • 热度指数:16353 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
今天牛牛学到了回文串,他想在数字里面找回文,即回文数,回文数是正着读与倒着读都一样的数,比如1221,343是回文数,433不是回文数。请输出不超过n的回文数。

输入描述:
输入一个整数n(1 <= n <= 100000)


输出描述:
从1开始按从小到大的顺序输出所有回文数
示例1

输入

10

输出

1
2
3
4
5
6
7
8
9
 for (int i = 1; i <= in.nextInt(); i++) {
      StringBuilder sb =  new StringBuilder(i + "");
      if (sb.toString().equals(sb.reverse().toString())) // sb.toString()
          System.out.println(i);
}

发表于 2025-01-25 16:32:01 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        StringBuilder str = new
        StringBuilder(); //StringBuffer是一个可变的字符序列--也可以StringBuilder
        for (int i = 1; i <= a; i++) {
            if (str.append(i).reverse().toString().equals(String.valueOf(i))) {
                System.out.println(i);
            };
            //str.append(i): 将当前数字i添加到StringBuffer中
            //.reverse(): 反转StringBuffer中的字符序列
            //.toString(): 将反转后的StringBuffer转换为String
            //String.valueOf(i): 将原始数字i转换为String
            str.setLength(0);
            //在每次循环结束时,清空StringBuffer
        }
    }
}

发表于 2024-08-10 22:04:09 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        StringBuffer str = new StringBuffer("");
        for (int i = 1; i <= a; i++) {
            if (str.append(i).reverse().toString().equals(String.valueOf(i))) {
                System.out.println(i);
            };
            str.setLength(0);
        }
    }
}

StringBuffer反转
编辑于 2024-03-01 17:12:29 回复(0)
import java.util.Scanner;
import java.util.ArrayList;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n=in.nextInt();
        
        ArrayList<String> arrayS=new ArrayList<String>();
        for(int i=1;i<=n;i++){
            String str=String.valueOf(i);
            String reverse=new StringBuffer(str).reverse().toString();
            if(str.equals(reverse)){
                arrayS.add(str);
            }                       
        }
        for(int i=0;i<arrayS.size();i++){           
            System.out.println(arrayS.get(i));           
        }
    }
}

发表于 2022-11-01 10:08:05 回复(0)
import java.util.*;

public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        for(int i=1;i<n;i++){
            if(isPalindrome(i)) System.out.println(i);
        }
    }
    public static boolean isPalindrome(int x){
        boolean is=true;
        String[] arr=String.valueOf(x).split("");
        for(int i=0;i<Math.ceil(arr.length/2);i++){
            if(!arr[i].equals(arr[arr.length-i-1])) is=false;
        }
        return is;
    }
}

发表于 2022-08-16 21:39:03 回复(0)
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int toJudgePalindrome = scanner.nextInt();
        for(int i = 1;i <= toJudgePalindrome ;i++){
            String str = String.valueOf(i);
            StringBuffer strBuff = new StringBuffer(str);
            if(str.equals(strBuff.reverse().toString())){
                System.out.println(i);
            }
        }
    }
}

发表于 2022-06-28 15:08:45 回复(0)
import java.util.*;
public class Main{
public static void main(String love[]){
   Scanner input=new Scanner(System.in);
   int n=input.nextInt();
    for(int i=1;i<=n;i++){
        String s=String.valueOf(i);
        StringBuffer sb = new StringBuffer(String.valueOf(i));
        if(String.valueOf(i).equals(sb.reverse().toString())){
            System.out.println(i);
        }
    }
     input.close();
} 
}

发表于 2022-05-12 12:20:33 回复(0)
//java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader f = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(f.readLine());
        for (int i = 1; i <= n; i++) {
            int b = 0;
            int c = i;
            while (c > 0) {
                b = b * 10 + c % 10; //反转
                c = c / 10;
            }
            if (b == i) {
                System.out.println(b);//判断原数和反转数是否相等
            }
        }
    }
}

//C++
#include <iostream>
using namespace std;

int main() {
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++) {
        int temp = i;
        int number = 0;
        //利用while循环将数反转
        while (temp>0) {
            number = number * 10 + temp % 10;
            temp = temp / 10;
        }
        if (number == i) {
            printf("%d\n", number);//判断原数和反转数是否相等
        }
    }
}

//c
#include <stdio.h>

int main() {
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++) {
        int temp = i;
        int number = 0;
        //利用while循环将数反转
        while (temp>0) {
            number = number * 10 + temp % 10;
            temp = temp / 10;
        }
        if (number == i) {
            printf("%d\n", number);//判断原数和反转数是否相等
        }
    }
}

发表于 2022-04-27 12:40:18 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        
        int a = sc.nextInt();
        if(a<10) {
            for(int i=1;i<=a;i++) {
                System.out.println(i);
            }
        }
        else {
            for(int i=1;i<=9;i++) {
                System.out.println(i);
            }
            for(int x=10;x<a;x++) {
                String[] b =Integer.toString(x).split("") ;
                int c = b.length/2;
                int d=0;
                for(int i=0;i<c;i++) {
                    if(b[i].equals(b[b.length-i-1])) {
                    }
                    else {
                        d++;
                    }
                }
                if(d==0) {
                    System.out.println(x);
                }
            }
            
        }
        
    }
}
发表于 2022-04-18 17:40:09 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i=1;i<=n;i++){
            StringBuffer s = new StringBuffer(i+"");
            if(s.toString().equals(s.reverse().toString()))
                System.out.println(s);
        }
    }
}

发表于 2022-03-05 14:44:05 回复(0)