码风鬼畜
by SamariumPhosphide @ 2020-05-26 23:13:51
您代码连简单的数据都过不了,比如7!=5040,而您的程序表示没有出现5;8!=40320,但是您的程序表示8!中只有一个0。建议别先考虑$O_2$了,先通过这俩例子检查程序的基本功能是否正确
by WanderOvO @ 2020-05-27 10:02:58
一段更简单的代码
```cpp
#include <iostream>
using namespace std;
int main(){
int t;
int result(int x,int y);
cin>>t;
int resl[t];
for(int i=0;i<=t-1;i++){
int m,n;
cin>>m>>n;
resl[i]=result(m,n);
}
for (int i=0;i<=t-1;i++) cout<<resl[i]<<endl;
}
int result(int x,int y){
int a[1000];
for (int i=0;i<1000;i++) a[i]=0;
a[999]=1;
for (int i=1;i<=x;i++){
for (int j=0;j<1000;j++)
a[j]*=i;
for (int k=999;k>=0;k--){
if (a[k]>9){
a[k-1]+=a[k]/10;
a[k]-=(a[k]/10)*10;
}
}
}
int zeroplace=0;
while (a[zeroplace]==0) zeroplace++;
int res=0;
for (int i=zeroplace;i<=999;i++)
if(a[i]==y) res++;
return res;
}
```
by shijihong @ 2020-09-29 13:45:10
不过我那段代码在洛谷上就tle,在本机上瞬间出答案
by shijihong @ 2020-09-29 13:46:13