pdm001125   4년 전

#include

void goal(int n){

int teamnum, min, sec, max;

int start = 0, goaltime = 0, onetime = 0, twotime = 0, boolean = 0, onescore = 0, twoscore = 0, tie = 0;
int winstate = 0;
max = 1;

while(n--){

scanf("%d %d:%d", &teamnum, &min, &sec);

if(teamnum == 1){

onescore++;

}else if(teamnum == 2){

twoscore++;

}

winstate = (onescore > twoscore)?1:2;

goaltime = min*60 + sec;

if(tie == 1){

start = goaltime;
max = 0;
tie = 0;

}

if(boolean != teamnum && max ==1){

if(boolean == 1){

onetime += goaltime - start;

}else if(boolean == 2){

twotime += goaltime - start;

}

start = goaltime;
}
max = 1;

if(onescore == twoscore){
tie = 1;
}
if(n == 0 && tie != 1){
if(winstate ==1){
onetime += 2880- start;
}else if(winstate == 2){

twotime += 2880 - start;
}
}
boolean = (teamnum == 1) ? 1 : 2
}
printf("%.2d:%.2d\n", onetime / 60, onetime % 60);
printf("%.2d:%.2d\n", twotime / 60, twotime % 60);
}
int main() {
int n;
scanf("%d", &n);
goal((int) n);
}

다른 질문에 있는 반례를 다 넣어봤는데 다 통과가 됩니다. 반례를 못찾겠어요

댓글을 작성하려면 로그인해야 합니다.