• 1046-第K回文数


    描述

     

    回文数是这样一个正整数:它从左往右读和从右往左读是一样的。例如1111121505都是回文数。将1100,000,000内所有回文数按从小到达排序后,第k个回文数是多少呢?

    输入

     

    第一行为一个整数N,表示询问的次数。以下N行每行一个整数k,表示询问第k个回文数是多少。

    输出

     

    输出共N行,按照输入数据的顺序,依次输出第k个回文数。

    样例输入

    2

    5

    10

    样例输出

    5

    11

    #include<stdio.h>
    int main(){int n,j,i,k;
    scanf("%d",&n);
    while(n--){
    scanf("%d",&k);
    if(k<=9);
    else if(k<=18)
    k=(k-10)*11+11;
    else if(k<=108)
    k=((k-19)/10+1)*101+(k-19)%10*10;
    else if(k<=198)
    k=((k-109)/10+1)*1001+(k-109)%10*110;
    else if(k<=1098)
    k=((k-199)/100+1)*10001+(k-199)/10%10*1010+(k-199)%10*100;
    else if(k<=1998)
    k=((k-1099)/100+1)*100001+(k-1099)/10%10*10010+(k-1099)%10*1100;
    else if(k<=10998)
    k=((k-1999)/1000+1)*1000001+(k-1999)/100%10*100010+(k-1999)%10*1000+(k-1999)/10%10*10100;
    else if(k<=19998)
    k=((k-10999)/1000+1)*10000001+(k-10999)/100%10*1000010+(k-10999)/10%10*100100+(k-10999)%10*11000;
    printf("%d
    ",k);
    }}
    

      

  • 相关阅读:
    EF 使用 oracle
    mysql安装笔记
    解决问题
    第四次冲刺
    第三次冲刺
    SQA
    第二次冲刺
    第一次冲刺,求进步
    Scrum _GoodJob
    我对git 、github的初印象
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436635.html
Copyright © 2020-2023  润新知