题解 | #简单输出#

简单输出

https://ac.nowcoder.com/acm/problem/21612

#include<bits/stdc++.h>
#define endl '\n'
#define ll long long
using namespace std;
ll a[10];
int b[10];
void get(int n,int s)
{
    int t=0;
    int m=n,g=0;
    while(m)
    {
        t++;
        g=m%10,m/=10;
    }
    for(int i=1;i<=9;i++)a[i]+=1ll*s*b[t-1];
    for(int i=1;i<g;i++)a[i]+=1ll*s*(b[t]-b[t-1]);
    a[g]+=1ll*s*(n-g*(b[t]-b[t-1])+1);
}
void solve(int n,int op)
{
    int j;
    for(int i=1;i<=n;i=j+1)
    {
        j=n/(n/i);
        get(j,op*n/i);
        get(i-1,-op*n/i);
    }
}
int main()
{
    int l,r;
    cin>>l>>r;
    int ans=1;
    for(int i=1;i<10;i++){
        b[i]=b[i-1]+ans;
        ans*=10;
    }
    solve(r,1);
    solve(l-1,-1);
    cout<<"hello world";
}

写了四个小时的代码居然过了(滑稽)

全部评论
什么东西??
点赞 回复 分享
发布于 2023-04-02 18:28 广西
为什么写了这么多??
点赞 回复 分享
发布于 2023-04-02 18:28 广西

相关推荐

牛客5655:其他公司的面试(事)吗
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务