同上,一样做法
2025-07-06 10:38:36
发布于:广东
1阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int n;
bool f(int x){
for(int i = 2;i < x;i ++){
if(x % i == 0){
return 0;
}
}
return 1;
}
long long ans[1145];
int main(){
cin >> n;
ans[0] = 1;
for(int i = 2;i <= n;i ++){
if(! f(i)) continue;
for(int j = 0;j <= n;j ++){
if(ans[j] && j + i <= n) ans[j + i] += ans[j];
}
}
cout << ans[n] << endl;
return 0;
}
这里空空如也
有帮助,赞一个