36 lines
795 B
C++
36 lines
795 B
C++
#include<iostream>
|
|
using namespace std;
|
|
int zh[10000001]={1},a[10000001][4];
|
|
bool zhi(int n){
|
|
for(int i=2;i*i<=n;i++){
|
|
if(n%i==0){
|
|
return 0;
|
|
}
|
|
}
|
|
return 1;
|
|
}
|
|
int main(){
|
|
int n,ans=0;
|
|
cin>>n;
|
|
zh[1]=2;
|
|
for(int i=3;i<=n-4;i++){
|
|
if(zhi(i)==1){
|
|
zh[++zh[0]]=i;
|
|
}
|
|
}
|
|
for(int i=1;zh[i]*3<=n;i++){
|
|
for(int j=i;zh[j]<=n-zh[i]-zh[j];j++){
|
|
int now=n-zh[i]-zh[j];
|
|
if(zhi(now)==1){
|
|
ans++;
|
|
a[ans][1]=zh[i];
|
|
a[ans][2]=zh[j];
|
|
a[ans][3]=now;
|
|
}
|
|
}
|
|
}
|
|
cout<<ans;
|
|
for(int i=1;i<=ans;i++){
|
|
cout<<endl<<n<<"="<<a[i][1]<<"+"<<a[i][2]<<"+"<<a[i][3];
|
|
}
|
|
} |