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

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

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

#include <stdio.h>
#include <math.h>
typedef struct node {
    int x1;
    int x2;
    int distence;
} node;
int judege(int x) {
    int i;
    for (i = 2; i < sqrt(x); i++) {
        if (x % i == 0)
            break;
    }
    if (i > sqrt(x))
        return 1;
    else
        return 0;
}
int main() {
    int n;
    scanf("%d", &n);
    int i, j = 0;
    node c[500];
    for (i = 2; i <= n / 2; i++) {
        if (judege(i) == 1 && judege(n - i) == 1) {
            c[j].x1 = i;
            c[j].x2 = n - i;
            c[j].distence = n - i - i;
            j++;
        }
    }
    int flag, low = 10000;
    for (i = 0; i < j; i++) {
        if (c[i].distence < low) {
            flag = i;
        }
    }
    printf("%d\n%d\n", c[flag].x1, c[flag].x2);
    return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务