求助 全WA
查看原帖
求助 全WA
241838
microchip楼主2021/10/7 09:17

自测阶乘写得没问题,该初始化的也初始化了,造了几组数据也过了,但是全WA

#include<bits/stdc++.h>
using namespace std;

int T,n,k,ans;
int num[1000];

int qdl(){
	int r;
	for(r=999;num[r]==0;r--);
	return r;
}

int main()
{
	cin>>T;
	while(T--){
		ans=0;
		cin>>n>>k;
		memset(num,0,sizeof(num));
		num[1]=1;
		for(int i=2;i<=n;i++){
			int s=qdl();
			for(int j=1;j<=s;j++){
				num[j]*=i;
				num[j]+=num[j-1]/10;
				num[j-1]%=10;
			}for(int j=s;j<1000;j++){
				if(num[j]>9){
					num[j+1]+=num[j]/10;
					num[j]%=10;
					continue;
				}break;
			}
		}int x=qdl();
		for(int i=1;i<=x;i++)
			if(num[i]==k)ans++;
		cout<<ans<<endl;
	}
	return 0;
}

2021/10/7 09:17
加载中...