二话不说,上代码:
#include<bits/stdc++.h>
using namespace std;
bool p[2005] = {1, 1};
long long f[1005] = {0, 0, 0, 0, 1},n;
long long find(int n) {
long long ans = 0;
for (int i = 1; i <= n; i++) {
if (!p[i])ans += find(n - i);
}
return ans;
}
int main() {
for (int i = 1; i <= 1000; i++) {
if (!p[i]) {
for (int j = p[i * 2]; j <= 1000; j += i)p[i] = 1;
}
}
cin>>n;
for (int i = 5; i <= n; i++) {
f[i] += find(i);
}
cout<<f[n];
return 0;
}