60分求助,de 了3次bug,只从50上到了60
查看原帖
60分求助,de 了3次bug,只从50上到了60
1074084
asd890123楼主2024/3/9 20:06
#include <cstdio>

int A[205],B[205];
int n,a,b,Ap,Bp,scA=0,scB=0;

void init();
void race();
void print();

#define won scA++
#define lose scB++

int main(){
    
    init();
    race();
    print();
    
    return 0;
}

void init(){
    
    scanf("%d%d%d",&n,&a,&b);
    for (int i=1;i<=a;i++) scanf("%d",&A[i]);
    for (int i=1;i<=b;i++) scanf("%d",&B[i]);
    
}

void race(){
    
    for (int i=1;i<=n;i++){
        
        Ap = i;
        Bp = i;
        Ap %= a;
        Bp %= b;
        if (Ap == 0) Ap = a;
        if (Bp == 0) Bp = b;
        if (A[Ap] == B[Bp]) continue;
        if (A[Ap] == 0){
            
            if (B[Bp] == 1) lose;
            if (B[Bp] == 2) won;
            if (B[Bp] == 3) won;
            if (B[Bp] == 4) lose;
            
        }
        if (A[Ap] == 1){
            
            if (B[Bp] == 0) won;
            if (B[Bp] == 2) lose;
            if (B[Bp] == 3) won;
            if (B[Bp] == 4) won;
            
        }
        if (A[Ap] == 2){
            
            if (B[Bp] == 0) lose;
            if (B[Bp] == 1) won;
            if (B[Bp] == 3) lose;
            if (B[Bp] == 4) won;
            
        }
        if (A[Ap] == 3){
            
            if (B[Bp] == 0) lose;
            if (B[Bp] == 1) lose;
            if (B[Bp] == 2) won;
            if (B[Bp] == 4) won;
            
        }
        if (A[Ap] == 4){
            
            if (B[Bp] == 0) won;
            if (B[Bp] == 1) won;
            if (B[Bp] == 2) lose;
            if (B[Bp] == 3) lose;
            
        }
        
    }
    
}

void print(){
    
    printf("%d %d",scA,scB);
    
}
2024/3/9 20:06
加载中...