大的数字就开始错
查看原帖
大的数字就开始错
249199
topuces楼主2022/10/18 10:55
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
    int X=0; bool flag=1; char ch=getchar();
    while(ch<'0'||ch>'9') {if(ch=='-') flag=0; ch=getchar();}
    while(ch>='0'&&ch<='9') {X=(X<<1)+(X<<3)+ch-'0'; ch=getchar();}
    if(flag) return X;
    return ~(X-1);
}
long long ans[1000001]={0};
long long p=1;
int main() {
    string a;
    for(int i=1;i<=820;i++) {
        a = to_string(i);
        for (int j = 1,k = 0; j <= i; j++) {
            ans[p] = ans[p - 1] + a[k] - 48;
            k++;
            if (k == a.size())k = 0;
            p++;
        }
    }
    int n,r,l;n=read();
    while(n--){
        l=read();r=read();
        cout<<ans[r]-ans[l-1];
    }
}

为什么捏

2022/10/18 10:55
加载中...