社区讨论
0分求助
P1591阶乘数码参与者 3已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @lo7yty1b
- 此快照首次捕获于
- 2023/10/27 09:59 2 年前
- 此快照最后确认于
- 2023/10/27 09:59 2 年前
我问问我哪错了。
看着没问题啊。
CPP#include<bits/stdc++.h>
#define int long long
using namespace std;
signed main(){
int n;
cin>>n;
for(int sd=1;sd<=n;sd++){
int ans[10000]={0},ls[10000]={0};
int s,a,l=1,d=0;
cin>>s>>a;
ans[1]=1;
for(int i=2;i<=s;i++){
int p=false;
for(int j=1;j<=l;j++){
ls[j]+=ans[j]*i;
if(ls[j]>=10){
if(j==l)p=true;
ls[j+1]+=ls[j]/10;
ls[j]%=10;
}
}
if(p==true)l++;
for(int j=1;j<=l;j++){
ans[j]=ls[j];
ls[j]=0;
}
for(int j=l;j>=1;j--)cout<<ans[j];
cout<<endl;
}
for(int i=1;i<=l;i++)if(ans[i]==a)d++;
cout<<d<<endl;
}
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...