1 条题解
-
0
C :
#include<stdio.h> int n; int a[9999],b[9999],t,ans; int main() { scanf("%d",&n); a[1]=1; for(int i=2;i<=n;i++) if(a[i]==0) for(int j=2;j*i<=n;j++) a[i*j]=1; for(int i=2;i<=n;i++) if(a[i]==0) b[++t]=i; for(int i=1;i<=t;i++) for(int j=i;j<=t&&n-b[i]-b[j]>=2;j++) if(a[n-b[i]-b[j]]==0&&b[i]<=b[j]&&b[j]<=n-b[i]-b[j]) ans++; printf("%d\n",ans); for(int i=1;i<=t;i++) for(int j=i;j<=t&&n-b[i]-b[j]>=2;j++) if(a[n-b[i]-b[j]]==0&&b[i]<=b[j]&&b[j]<=n-b[i]-b[j]) printf("%d=%d+%d+%d\n",n,b[i],b[j],n-b[i]-b[j]); return 0; }C++ :
#include <bits/stdc++.h> using namespace std; bool sushu(int n){ bool f = true; int i; for(i = 2;i <= sqrt(n);i++){ if(n % i == 0){ f = false; break; } } if(n <= 1){ f = false; } return f; } int main(){ int a[100][3]; int n,i,j,c = 0,x; cin>>n; for(i = 2;i <= n / 3;i++){ if(sushu(i)){ x = n - i; for(j = i;j <= x / 2;j++){ if(sushu(j) && sushu(x - j)){ a[c][0] = i; a[c][1] = j; a[c][2] = x - j; c++; } } } } cout<<c<<endl; for(i = 0;i < c;i++){ cout<<n<<"="<<a[i][0]<<"+"<<a[i][1]<<"+"<<a[i][2]<<endl; } }Java :
import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a=sc.nextInt(); int f=0; for (int b=a;b==a ;b++ )if(b%2!=0){ {for (int c=2;c<b ;c++ )if(suShu(c)==true){ {for (int d=c;d<=b ;d++ )if(suShu(d)==true){ {for (int e=d;e<=b ;e++ )if(suShu(e)==true){ {if (b==c+d+e){ f++; } } } } } } } }System.out.println(f); } for (int b=a;b==a ;b++ )if(b%2!=0){ {for (int c=2;c<b ;c++ )if(suShu(c)==true){ {for (int d=c;d<=b ;d++ )if(suShu(d)==true){ {for (int e=d;e<=b ;e++ )if(suShu(e)==true){ {if (b==c+d+e){ System.out.println(b+"="+c+"+"+d+"+"+e); } } } } } } } } } } public static boolean suShu(int n){ boolean f =true; for (int i=2;i<n ;i++ ) {if (n%i==0) {f=false; break; } if (n==1) {f=false; } }return f; } }
- 1
信息
- ID
- 254
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者