社区讨论

求助大神谢谢

P1591阶乘数码参与者 3已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@lo1aho0t
此快照首次捕获于
2023/10/22 17:51
2 年前
此快照最后确认于
2023/11/02 18:10
2 年前
查看原帖
C
#include<bits/stdc++.h>
using namespace std;
const int MAX=10000;
long long sum;
int x,y,z;
int main()
{
	
	int i,j,n;
	int fac[MAX+1];
	memset(fac,0,sizeof(fac));
	cin>>x;
	for(int k=1;k<=x;k++)
	{
		cin>>y>>z;
		sum=0;
		fac[1]=1;
		for(i=1;i<=y;i++)
		{
			for(j=1;j<=MAX;j++) 
				fac[j]=fac[j]*i;
			for(j=1;j<=MAX;j++)
			{
				fac[j+1]=fac[j+1]+fac[j]/10;
				fac[j]=fac[j]%10;
			}
		}
		i=MAX;
		while(fac[i]==0) 
			i--;
		for(j=i;j>=1;j--)
			if(fac[j]==z)
				sum++;
		cout<<sum<<endl;		 
	}	
	cout<<endl;
	return 0;
 } 

样例是过来了(自己做了俩样例也过了),但是是零分,求大神帮助谢谢。

回复

4 条回复,欢迎继续交流。

正在加载回复...