【十二题解】 | #查找组成一个偶数最接近的两个素数#

查找组成一个偶数最接近的两个素数

http://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9

#include<stdio.h>

#include<math.h>

int is_prim(int a){

int prim = 1;
int x = sqrt(a)+1;
for(int i=2; i<x; i++){
    if(a%i==0){
        prim =0;
        break;
    }
}
return prim;

}

int main(){

int number;
while(scanf("%d", &number) != EOF){
    int start = number/2;
    for(int i=start; i>=2; i--){
        if(is_prim(i) && is_prim(number-i)){
            printf("%d\n%d\n", i, number-i);
            break;
        }
    }
}
return 0;

}

全部评论
想法也太好了吧
1 回复 分享
发布于 2022-03-16 15:53
感觉题目说得不清楚,什么叫组成偶数的两个数?应该就是这两个数的和是了个偶数。 楼主思路很巧妙,从中间往左找,必定差最小
2 回复 分享
发布于 2022-06-05 22:20
思路很棒,赞
1 回复 分享
发布于 2022-03-25 16:23
确实,从正中间开始遍历最快,我最初还是从2开始遍历的,思维局限了。
点赞 回复 分享
发布于 2022-08-02 14:14
debug:上文第四行会对2进行误判为非prime.应加一个判断:if(a == 2)break; else if( a % i == 0 )......
点赞 回复 分享
发布于 2023-04-10 23:57 山西

相关推荐

在努力的外卷侠很靠谱:怎么,大家都没保底吗?我这美团已经入职了,不说了,系统派单了。
点赞 评论 收藏
分享
头像
11-09 12:17
清华大学 C++
out11Man:小丑罢了,不用理会
点赞 评论 收藏
分享
21 5 评论
分享
牛客网
牛客企业服务