#include using namespace std; #define int long long #define INF -1145141919810 #define REP(i,n) for (int i=0;i<(n);i++) typedef pair P; int N; int dp[20100]={}; vector prime; int generate(){ prime.push_back(2); for(int i=3;i<=N;i+=2){ int k=0; for(int j=3;j<=sqrt(i);j+=2){ if(i%j==0){ k=1; break; } } if(k==0) prime.push_back(i); } return 0; } signed main(){ cin>>N; generate(); for(int i=0;i=0;j--){ if(dp[j]!=0&&prime[i]+j<=N){ dp[prime[i]+j]=max(dp[prime[i]+j],dp[j]+1); } } dp[prime[i]]=max(dp[prime[i]],(int)1); } if(dp[N]==0) dp[N]=-1; cout<