社区讨论
ABC C题对拍两小时无果,WA 4求助
学术版参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @m5j1nszi
- 此快照首次捕获于
- 2025/01/05 11:19 去年
- 此快照最后确认于
- 2025/01/05 14:12 去年
CPP
#include<bits/stdc++.h>
#define int long long
#define In(x) freopen(x,"r",stdin)
#define Out(x) freopen(x,"w",stdout)
using namespace std;
int n;
const int N=35;
int a[N];
int Calc(int n){
int ans=0;
for(int i=1;i<n;i++) for(int j=1;j<=9;j++) ans+=pow(j,i-1);
for(int j=1;j<a[n];j++) ans+=pow(j,n-1);
int i=n-1;
for(i=n-1;i>=1;i--){
ans+=min(a[i],a[n])*pow(a[n],i-1);
if(a[i]>=a[n]) break;
}
if(!i) ans++;
return ans;
}
int Solve(int x){
n=0;
while(x) a[++n]=x%10,x/=10;
return Calc(n);
}
signed main()
{
In("A.in");Out("A.out");
int l,r;cin>>l>>r;
cout<<Solve(r)-Solve(l-1);
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...