莫名WA点,求助
查看原帖
莫名WA点,求助
239192
淸梣ling楼主2020/11/5 15:12
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
	long long k;
	long long i;
	long long all=0,num,tmp;

	cin>>k;
	for(i=1;;i++)
	{
		if(all+i*9*pow(10,i-1)>=k)
		{
			num=k-all;//剩下的位数
			tmp=(num-1)%i+1;//正数第几位
			tmp=i-tmp+1;
			num=pow(10,i-1)+(num+i-1)/i-1;
			// cout<<num<<" "<<tmp<<" ";
			while(tmp!=1)
			{
				num/=10;
				--tmp;
			}
			cout<<num%10;
			break;
		}
		all+=i*9*pow(10,i-1);
	}
	return 0;
}

已经和正解对拍过了,前10000位都是一样的,也不知道为啥WA了。。。

2020/11/5 15:12
加载中...