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

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

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

#include <stdio.h>

int sushu( int n) {
    int temp = 0;
    int Y = 0;
    for (int i = 2; i < n; i++) {
        if (n % i == 0) {
            temp++;
        }
    }
    if (temp == 0) {
        Y = 1;
    }
    return Y;
}


int main() {
    int n;
    scanf("%d", &n);
    if (n >= 4 && n <= 1000) {



        int a[100] = {0};
        int b[100] = {0};
        int c = 0, min;
        int d[100] = {0};

        for (int i = 1; i <= n / 2 ; i++) {
            a[c] = i;
            b[c] = n - a[c];
            if (sushu(a[c]) == 1 && sushu(b[c]) == 1) {
                c++;
            }
        }

        for (int i = 0; i <= c - 1; i++) {          //c在判定后又+了一次1,所以真正的答案需要-1
            d[i] = b[i] - a[i];
        }
        for (int i = 0; i < c - 1; i++) {
            min = i;
            if (d[i] > d[i + 1]) {
                min = i + 1;
            }
        }


        printf("%d\n%d", a[min], b[min]);
    }



    return 0;
}

全部评论

相关推荐

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

创作者周榜

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