2852번 - NBA 농구
다른 글에 있는 반례를 넣어봐도 잘 나오는것 같은데... 어디에서 틀렸는지 모르겠습니다
#include
int main()
{
int n, atesc = 0, btesc = 0, prtim = 0, prtis = 0, adosw = 0, bdosw = 0;
int adotim = 0, adotis = 0, bdotim = 0, bdotis = 0, lasc = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++)
int gote, gotim, gotis;
scanf("%d %d:%d", &gote, &gotim, &gotis);
if (gote == 1) atesc++;
else if (gote == 2) btesc++;
if (atesc > btesc)
if (adosw == 0)
prtim = gotim;
prtis = gotis;
}
adosw = 1;
else if (atesc == btesc)
if (adosw == 1)
adotim += gotim - prtim;
adotis += gotis - prtis;
else if (bdosw == 1)
bdotim += gotim - prtim;
bdotis += gotis - prtis;
adosw = 0;
bdosw = 0;
else if (atesc < btesc)
if (bdosw == 0)
bdosw = 1;
lasc++;
if (lasc == n)
adotim += 48 - prtim;
adotis += 00 - prtis;
bdotim += 48 - prtim;
bdotis += 00 - prtis;
if (adotis < 0)
adotis += 60;
adotim--;
if (adotis >= 60)
adotis -= 60;
adotim++;
if (bdotis < 0)
bdotis += 60;
bdotim--;
if (bdotis >= 60)
bdotis -= 60;
bdotim++;
printf("%02d:%02d\n", adotim, adotis);
printf("%02d:%02d", bdotim, bdotis);
댓글을 작성하려면 로그인해야 합니다.
hankeej0 3년 전
다른 글에 있는 반례를 넣어봐도 잘 나오는것 같은데... 어디에서 틀렸는지 모르겠습니다
#include
int main()
{
int n, atesc = 0, btesc = 0, prtim = 0, prtis = 0, adosw = 0, bdosw = 0;
int adotim = 0, adotis = 0, bdotim = 0, bdotis = 0, lasc = 0;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
int gote, gotim, gotis;
scanf("%d %d:%d", &gote, &gotim, &gotis);
if (gote == 1) atesc++;
else if (gote == 2) btesc++;
if (atesc > btesc)
{
if (adosw == 0)
{
prtim = gotim;
prtis = gotis;
}
adosw = 1;
}
else if (atesc == btesc)
{
if (adosw == 1)
{
adotim += gotim - prtim;
adotis += gotis - prtis;
}
else if (bdosw == 1)
{
bdotim += gotim - prtim;
bdotis += gotis - prtis;
}
adosw = 0;
bdosw = 0;
}
else if (atesc < btesc)
{
if (bdosw == 0)
{
prtim = gotim;
prtis = gotis;
}
bdosw = 1;
}
lasc++;
if (lasc == n)
{
if (atesc > btesc)
{
adotim += 48 - prtim;
adotis += 00 - prtis;
}
else if (atesc < btesc)
{
bdotim += 48 - prtim;
bdotis += 00 - prtis;
}
}
if (adotis < 0)
{
adotis += 60;
adotim--;
}
if (adotis >= 60)
{
adotis -= 60;
adotim++;
}
if (bdotis < 0)
{
bdotis += 60;
bdotim--;
}
if (bdotis >= 60)
{
bdotis -= 60;
bdotim++;
}
}
printf("%02d:%02d\n", adotim, adotis);
printf("%02d:%02d", bdotim, bdotis);
}