• POJ2402 Palindrome Numbers第K个回文数——找规律


    问题

    给一个数k,给出第k个回文数  链接

    题解

    打表找规律,详见https://www.cnblogs.com/lfri/p/10459982.html,差别仅在于这里从1数起.

    AC代码

    #include<cstdio>
    #include<iostream>
    #include<string>
    #include<sstream>
    using namespace std;
    
    typedef long long LL;
    
    void solve(string str)
    {
        int len = str.length();
    
        if (len == 1)
        {
            printf("%c
    ", str[0] - 1);
            return;
        }
    
        if (str[0] == '1')
        {
            if (str[1] == '0')
            {
                str[1] = '9';
                for (int i = 1; i < len; i++)  printf("%c", str[i]);
                for (int i = len - 2; i >= 1; i--)  printf("%c", str[i]);
                printf("
    ");
            }
            else
            {
                for (int i = 1; i < len; i++)  printf("%c", str[i]);
                for (int i = len - 1; i >= 1; i--)  printf("%c", str[i]);
                printf("
    ");
            }
        }
        else
        {
            str[0] = str[0] - 1;
            for (int i = 0; i < len; i++)  printf("%c", str[i]);
            for (int i = len - 2; i >= 0; i--)  printf("%c", str[i]);
            printf("
    ");
        }
    }
    
    void ToString(LL num, string& str)
    {
        stringstream ss;
        ss << num;
        ss >> str;
    }
    
    string str;
    LL num;
    
    int main()
    {
    
        while (cin >> num && num)
        {
            ToString(num + 1, str);   //从1开始num要加一,从0开始不用
            solve(str);
        }
        return 0;
    }
  • 相关阅读:
    Django之权限用法
    Django之stark组件的使用和总结
    Django之stark组件2
    Wmic
    Powershell + HTA
    IFG以太网帧间隙
    python编译报错
    C# 格式化XML方法
    C#开发中常用的加密解密方法
    面试题
  • 原文地址:https://www.cnblogs.com/lfri/p/10460088.html
Copyright © 2020-2023  润新知