找不同

#include<stdio.h>                //y=x+b   y=-x+b
int main() {                     //b = y-x   b = y+x
    int i,j,k,n,a,b,max,sum = 0;
    int x[1000],y[1000];
    scanf("%d", &n);
    for(i = 0; i < n; i++) {
        scanf("%d", &x[i]);
     }
    for(i = 0; i < n; i++) {
        scanf("%d", &y[i]);
     }
     
    for(i = 0; i < n; i++) {
        a = x[i] + y[i];
        for(j = 0; j < n; j++) {
            b = x[j] - y[j];
            sum = 0;
            for(k = 0; k < n; k++) {
                if(x[k] + y[k] == a || x[k] - y[k] == b) {
                    sum++;
                }
                 
            }
            if(sum > max) {
                    max = sum;
                }
        }
    }
    printf("%d", max);
}
为啥这个对
#include <stdio.h>

int main() {
    int n,i,j,k;
    int a,b,cnt,max=0;
    scanf("%d",&n);
    int x[1000],y[1000];
    for(i=0;i<n;i++){
        scanf("%d",&x[i]);
    }
    for(i=0;i<n;i++){
        scanf("%d",&y[i]);
    }
    for(i=0;i<n;i++){
        a=x[i]+y[i];
        for(j=0;j<n;j++){
            b=x[j]-y[j];
            cnt=0;
            for(k=0;k<n;k++){
                if(a==x[k]+y[k]||b==x[k]-y[k]){
                    cnt++;
                }
                if(cnt>max){
                    max=cnt;
                }
            }
        }
    }
    printf("%d",max);
    return 0;
}

为啥这个不对

全部评论
最后一个if判断是写在for 循环外面的,但是你的写在了for循环里面,所以你的错了
2 回复 分享
发布于 2021-02-03 10:46
有区别吗
点赞 回复 分享
发布于 2021-02-02 22:34

相关推荐

10-31 11:57
门头沟学院 Java
点赞 评论 收藏
分享
10-11 17:45
门头沟学院 Java
走吗:别怕 我以前也是这么认为 虽然一面就挂 但是颇有收获!
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务