P10495 阶乘分解 80求调
  • 板块学术版
  • 楼主chenwenmo
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/7/12 12:11
  • 上次更新2024/7/12 14:14:12
查看原帖
P10495 阶乘分解 80求调
815504
chenwenmo楼主2024/7/12 12:11
#include<bits/stdc++.h>
using namespace std;
int n, cnt, prime[1000010], v[1000010];
int main(){
	cin >> n;
	for(int i = 2; i <= n; i++){
		if(v[i] == 0){
			v[i] = i;
			prime[++cnt] = i;
		}
		for(int j = 1; j <= cnt; j++){
			if(prime[j] > v[i] || prime[j] * i > n) break;
			v[prime[j] * i] = prime[j];
		}
	}
	for(int i = 1; i <= cnt; i++){
		int sum = 0;
		int k = prime[i];
		while(k <= n){
			sum += n / k;
			k *= prime[i];
		}
		if(sum > 0){
			cout << prime[i] << ' ' << sum << endl;
		}
	} 
	return 0;
}

错最后一个点

2024/7/12 12:11
加载中...