10월 10일에 2020년도 ICPC 인터넷 예선이 있었다.
E, F, I, K를 굉장히 빨리 풀었고, A, H, L에 도전해보았는데 결국 풀지 못했다. 최종 순위는 교내 3등이 되었다. 개인적으로 코드포스를 하면서 했던 빠르고 정확히 문제를 푸는 연습이 패널티를 줄이는 데 도움이 되었던 것 같다.
팀원은 나와 yooshnn, jsh031613으로, 3명 다 팀 대회 경험이 없거나 턱없이 부족했다. 그래도 열심히 하기로 하고, 팀명은 적절히 3명의 닉네임을 섞은 yoojin and dllrary로 결정했다.
Timeline
대회 시작 전
원래 스터디룸 같은 곳을 빌려 진행하려고 했는데, 프린터까지 사용 가능한 마땅한 곳을 찾지 못해서 우리 집에서 진행하기로 했다. 대회 2시간 전 모여 밥을 먹고 Zoom과 장비 등을 세팅하고 리듬 게임도 하면서 대회 시작까지 기다렸고, 10분의 딜레이 끝에 대회가 시작되었다.
I 솔브 (9분)
나랑 jsh031613은 시작 직후 프린터로 문제들을 뽑고 있었고, yooshnn은 문제들을 읽다가 I번이 SCPC 예선 문제랑 비슷하다며 바로 풀어버렸다.
E 솔브 (+1, 27분)
E가 I 다음으로 많이 풀려있길래 읽었고, 바로 Union-Find를 사용하는 문제인 것을 캐치했다. 구현 자체는 정말 빨리 했는데, 어디서 뭔가가 꼬여서 디버깅을 하다가 디버깅 출력 코드를 제거하지 않고 제출해서 1번 WA를 받았다.
F 솔브 (52분)
E를 맞추고 나서 F의 풀이가 떠올랐는데, 당시 K가 더 많이 풀려 있어서 고민을 잠깐 하다가 F를 구현하기로 마음먹었다. Case Work를 통해 풀었기 때문에, 코드가 상당히 복잡했고, 구현 실수가 나면 디버깅하기도 어려운 구조여서 소스코드를 작성하면서 머릿속으로 수없이 돌려봤던 것 같다.
K 솔브 (73분)
F를 풀고, 바로 K를 읽어보았다. 일반적인 BFS에 Priority-Queue를 넣어서 가중치 관리를 하면 풀릴 것 같았다. F를 구현하느라 머리가 좀 아프기도 했고, 다른 문제들도 좀 읽어보고 싶어서 L을 보고 있었던 yooshnn에게 풀이과정을 설명하고 구현하라고 했고, 실제로 정답을 받아왔다.
4솔브를 하고 나서의 순위는 전체 27등이었고, 이대로라면 리저널까지도 노려볼 만 하지 않을까 하면서 잠시 설렜던 것 같다.
L WA
yooshnn은 그리디한 접근을 계속 시도하고 있었고, 결국 정답으로 이어지진 못했다. 혹시 DP가 아닐까 생각해봤는데, 마땅한 DP 식이 생각나지 않았다. 그렇게 2시간 내내 L번을 풀지 못하고 예선이 종료되었다.
A WA
jsh031613이 A번이 LIS를 사용하는 문제인 것 같다고 말했고, 실제로 케이스를 잘 나눠서 LIS를 돌리면 풀린다고 한다. 그런데 당시에는 L에 몰두하느라 제대로 생각하지 못했고, WA 한 번을 받았다.
끝나고 문제들을 다시 보니, H와 L은 충분히 접근할 만한 문제였다고 생각한다. 하지만 끝없이 뇌절하다가 결국 2시간 동안 한 문제도 풀지 못했다. 그래도 멤버들의 실력에 비해 좋은 성과를 뽑아냈다고 생각한다. 위의 두 팀은 우리 팀과 실력 차이가 엄청나게 났기 때문이었다.
비록 리저널 진출에는 실패했지만, 앞으로 있을 IUPC 및 다른 대회들에도 적극적으로 도전해볼 생각이다.
'History' 카테고리의 다른 글
IUPC 2020 참가 후기 (2) | 2021.01.11 |
---|---|
Codeforces Archive (0) | 2020.12.13 |
프로그래머스 월간 코드 챌린지 2020-10 (0) | 2020.10.09 |
2020년 9월 근황 (0) | 2020.10.09 |
About myself (0) | 2020.10.06 |