100 Accepted
# | 状态 分数 | 耗时 | 内存占用 |
---|---|---|---|
#1 | Accepted 100 | 3ms | 412 KiB |
代码
#include<bits/stdc++.h>
using namespace std;
bool a[105],n;
int main() {
scanf("%d",&n);
for(int z=2; z<=sqrt(n); z++) {
for(int y=z*2; y<=n; y+=z) {
a[y]=1;
}
}
//埃筛法筛质数,将所有质数标为1,不会的也可以一个一个判断过去,毕竟这题数据太小了
for(int z=4; z<=n; z+=2) {
for(int y=2; y<z; y++) { //注意,y不能大于z
if(!a[y]&&!a[z-y]) { //判断这个数是否为质数并且偶数z减去这个数的差也为质数,等价于(a[y]==0&&a[z-y]==0)
cout<<z<<"="<<y<<"+"<<z-y<<endl;//输出答案
break;//输出一次就跳出,因为从小到大循环第一次找到的答案一定最小
}
}
}
return 0;
}
信息
- 递交者
- 题目
- P284 练46.3 哥德巴赫猜想
- 语言
- C++11
- 代码长度
- 488 Bytes
- 递交时间
- 2024-1-8 19:21:45
- 评测时间
- 2024-1-8 19:21:47
- 分数
- 100
- 总耗时
- 3ms
- 峰值时间
- 3ms
- 峰值内存
- 412 KiB