求助5RE(T-T)
查看原帖
求助5RE(T-T)
719619
drinktowind楼主2023/8/3 11:21
#include <bits/stdc++.h>
using namespace std;
bool f[10010];
long long prime[10010],dp[1000010]={1},cnt;
bool check(int n)
{
	for(int i=2;i<=n;i++)
	{
		if(!f[i])
			prime[++cnt]=i;
		for(int j=2;j<=n;j++)
		{
			f[i*j]=1;
			if(i%j==0)
				break;
		}
	}
}
int main()
{
	int n;
	scanf("%d",&n);
	check(n);
	for(int i=1;i<=cnt;i++)
	{
		for(int j=prime[i];j<=n;j++)
			dp[j]+=dp[j-prime[i]];
	}
	printf("%d",dp[n]);
	return 0;
}
2023/8/3 11:21
加载中...