• Day 7 acwing打卡 1346.回文平方


    回文数是指数字从前往后读和从后往前读都相同的数字。

    例如数字 1232112321 就是典型的回文数字。

    现在给定你一个整数 BB,请你判断 13001∼300 之间的所有整数中,有哪些整数的平方转化为 BB 进制后,其 BB 进制表示是回文数字。

    输入格式

    一个整数 BB。

    输出格式

    每行包含两个在 BB 进制下表示的数字。

    第一个表示满足平方值转化为 BB 进制后是回文数字那个数,第二个数表示第一个数的平方。

    所有满足条件的数字按从小到大顺序依次输出。

    数据范围

    2B202≤B≤20,
    对于大于 99 的数字,用 AA 表示 1010,用 BB 表示 1111,以此类推。

    输入样例:

    10
    

    输出样例:

    1 1
    2 4
    3 9
    11 121
    22 484
    26 676
    101 10201
    111 12321
    121 14641
    202 40804
    212 44944
    264 69696

    #include<iostream>
    #include<algorithm>
    #include<string>
    using namespace std;
    
    int n;
    
    char getch(int b)
    {
        if(b >= 10)
            return b - 10 + 'A';
        else
            return b + '0';
    }
    
    bool judge(string s)
    {
        for(int i = 0, j = s.length() - 1; i < j; i++, j--)
            if(s[i] != s[j])
                return false;
        
        return true;
    }
    
    
    string base(int num){
        string st = "";
        int x = 0;
        
        while(num){
            x = num % n;
            st += getch(x);
            num /= n;
        }
        
        reverse(st.begin(), st.end());
        return st;
    }
    
    
    int main()
    {
        
        cin >> n;
        
        for(int i = 1; i <= 300; i++)
        {
            string st = base(i * i);
            
            if(judge(st))
                cout<< base(i) << " "<< st <<endl;
        }
        return 0;
    }
  • 相关阅读:
    用遗传算法解决子集和问题
    XML映射配置文件
    generator插件配置方式使用
    声明
    spring IOC简单分析
    模板模式
    原型模式
    委派模式,策略模式
    单例模式2
    单例模式
  • 原文地址:https://www.cnblogs.com/xiaowangdatie/p/14523762.html
Copyright © 2020-2023  润新知