用vector写的样例没问题,但全都WA了,求大佬指点
查看原帖
用vector写的样例没问题,但全都WA了,求大佬指点
477670
roseCoder楼主2021/4/8 14:35
#include<iostream>
#include<algorithm>
#include<vector>

using namespace std;

vector<int> fact(int n) //求某个数的阶乘
{
	vector<int> res;
	res.push_back(1);   //先插入1
	for (int i=2;i<=n;i++){    //将每个数都乘进去
		int k=0;
		for (int j=0;j<res.size();j++){
			int t = res[j]*i+k;
			res[j]=t%10;
			k=t/10;
		}
		if (k) res.push_back(k);
	}
	return res;
}

int main()
{
	int t, n, a;
 	cin>>t;
 	while(t--){
		cin>>n>>a;
		vector<int> v = fact(n);
		long long res=0;
		for (int i=0;i<v.size();i++){
			if (v[i]==a) res++;
		}
		cout<<res<<endl;
	}
}
2021/4/8 14:35
加载中...