SWERC 2019-20

마지막 수정 시각: 2020-10-26 22:59:26

아래는 타임 라인에 따른 진행. 내가 앞에서부터 읽고, xtalxlr님이 뒤에서부터 읽고, acka님이 가운데부터 읽었다.

00:02 I AC

xtalxlr님이 I번을 읽고 AC.

00:04 B AC

내가 B 읽고 AC.

00:07 C AC

이어서 내가 C 읽고 AC

00:17 F AC

xtalxlr님이 F AC. 여기까지는 꽤 무난하게 쉬운 문제를 잘 풀었다. 이 다음에 나는 A,D 정도를 읽어보았고 acka님과 xtalxlr님은 뒤쪽에서 E, H, J 등의 문제를 읽었다. A가 처음에는 너무 복잡해보였는데 다시 읽어보니 쉬운 문제라서 그 다음에 바로 내가 A 코딩에 들어갔다.

00:42 A AC

중간에 약간씩 키보드 넘겨받고 왔다갔다 하면서 A를 풀었다. A를 풀고 나서 나는 그 다음으로 K를 잡았고, xtalxlr님은 J를, acka님은 H를 잡았다. 세 문제 다 비교적 풀이 방향성은 일찍 나왔는데 전부 다 디버깅 과정에서 많이 막히는 바람에 한참동안 병목이 생겼다. 여기서 시간 많이 쓴게 제일 아쉽다.

01:05 K WA

내가 K를 먼저 붙잡아서 코딩했는데 제출 후 WA. 다시 좀 고민해보니 반례가 생각나서 그걸 이어서 고쳤다.

01:44 K WA

하지만 또 WA... 근본적으로 풀이가 좀 잘못된 것 같아서 여기서 계속 고민했다. 이 중간 중간에 키보드가 빌 때 acka님이 H를 잡기도 하고 xtalxlr님이 J를 잡기도 하고 하면서 좀 주거니 받거니 했던 것 같다.

02:12 K WA

풀이를 아예 처음부터 뜯어고쳐서 다시 짰는데 또 WA.. 여기서 약간 멘탈이 나갔다. 나는 반례를 계속 찾았고, xtalxlr님이 키보드를 넘겨 받아서 J를 짰다.

02:18 J TLE

그리고 제출했는데 TLE. 이 다음에는 acka님이 키보드를 넘겨 받아서 H를 짰다.

02:24 H WA

하지만 H도 WA.

02:26 J AC

다행히 xtalxlr님이 빠르게 J 틀린 부분을 찾아서 고친 후 AC를 받았다. 4솔브 -> 5솔브를 가는데 거의 2시간이 걸렸다.

02:33 K WA

다음에는 내가 다시 키보드를 넘겨 받아서 K를 짰다. 생각한 틀린 케이스가 있어서 그걸 고쳤는데 여전히 같은 테스트 케이스에서 WA가 났다.

02:37 H WA

acka님이 다시 H를 제출했으나 WA. 약간 WA 늪에 빠진 것 같은 기분이었다.

02:52 H AC

하지만 이어서 디버깅 끝에 acka님이 H를 다시 제출해서 푸는데 성공했다. 결국 K,J,H중에 제일 먼저 붙잡은 건 내 K였는데 이게 제일 늦게 풀렸다 ㅋㅋ.. 이 문제 풀이 제대로 못 세우고 한참 헤맨게 이번 셋에서 제일 반성할만한 부분인 듯.

02:55 K AC

다행히 acka님 H 낸 후 생각했던 틀린 부분 고쳐서 내니 K도 맞았다. 한참 못 맞추다 막힌 문제 주루룩 3개 연달아 풀면서 솔브 수가 확 올랐다.

이 때 xtalxlr님은 E 풀이는 나와 있는 상태였는데 이게 구현이 오래 걸리는 문제였어서, 이걸 키보드가 빌 때마다 조금씩 풀고 계셨고 나는 G의 풀이를 고민하고 있었다. acka님은 xtalxlr님이랑 논의한 후 L을 보고 계셨다.

조금 생각해보니 G의 풀이 방향이 나왔고 이걸 acka님과 논의했다. 근데 내가 시간복잡도를 잘못 생각했었고, 이 부분만 개선하면 맞을 수 있겠다는 판단이 들었다. 그 다음에 acka님이 종의 종류(S)에 비례해서 판단할 수 있지 않을까 하는 말씀을 하셨고 이걸 기반으로 좀 생각해보니 O(NS)에 풀 수 있는 풀이가 떠올라서, G 코딩에 들어갔다.

03:37 G AC

다행히 한 번에 깔끔하게 AC. 이 다음에 나는 D를 읽었다.

03:51 E AC

xtalxlr님이 E도 깔끔하게 AC. 이제 D와 L만 남은 상태여서 나는 D를 봤고 xtalxlr님과 acka님은 L을 봤다. L의 경우 이 시점에서 풀이는 대충 나와 있는 상태였는데, 구현이 복잡하고 오래 걸리는 문제라 두 분이서 풀이를 좀 더 구체화하고 계셨다. 나는 D를 다시 읽어보니 적혀 있는게 복잡해서 그렇지 충분히 풀만한 문제로 보였고, 그래서 D랑 L 사이에 고민하다 내가 30분 안에 충분히 D 짤 수 있다고 해서 D 구현에 들어갔다. 화면 스크린 캐스트로 키고 내가 짜는거 실시간으로 보면서 진행.

04:33 D AC

내가 조금 문제를 잘못 이해했던 부분이 있어서 생각보다 시간이 조금 더 걸리긴 했는데 아무튼 문제 읽고 풀이 나오고 나서 대충 30분 만에 짰다. 그리고 이제 L 하나만 남아서, 이번에는 xtalxlr님이 화면 스크린 캐스트로 키고 나랑 acka님은 L 구현하는 걸 구경.

04:50 L WA

예제가 나와서 냈으나 WA... 그리고 코드를 본 다음에 잘못 생각한 부분을 찾아서 급하게 그걸 고쳤다.

04:59 L RTE

시간이 너무 없어서 로컬에서 테스트도 못 해보고 코드 고치자마자 바로 제출했다. 근데 RTE on test 1... 눈물을 머금고 11솔브로 마감.

종료

05:16 L AC

그리고 끝난 후 16분 정도 더 디버깅한 다음에 L도 맞아서 끝났다. 진짜 올솔브할만 했는데 참 아쉬웠다. 아무튼 잘 풀었고 오랜만에 팀 연습해서 너무 재밌었다. 코로나 때문에 오프라인으로 만나서 못 한게 너무 슬프다. 끝나고 딱 저녁 회식하고 마쳐야 되는데