poj1019

来源:互联网 发布:手机淘宝卡券包怎么用 编辑:程序博客网 时间:2024/05/17 05:53
#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <cmath>using namespace std;typedef long long int LLint;int main(){int kase;  LLint n;for(cin>>kase;kase--;){cin>>n;char s[30];LLint k=0;LLint sum=0;int i;LLint pre=0;for( i=1;i<=99999&&sum<=2147483647;i++){sprintf(s,"%d",i);k+=strlen(s);sum+=k;if(sum>=n)break;  pre=sum;      }if(sum==n){cout<<s[strlen(s)-1]<<endl;}else{int j=i-1;n-=pre;LLint sum1=0;LLint jk=0;int lk;LLint pre1=0;for(lk=1;;lk++){sprintf(s,"%d",lk);sum1+= strlen(s);;if(sum1>=n)break; pre1=sum1;}if(sum1==n){cout<<s[strlen(s)-1]<<endl;}else{cout<<s[n-pre1-1]<<endl;}}}return 0;}
0 0
原创粉丝点击