이미 결말이 어느정도 알려진 스토리지만, 또 전지적 주인공 시점에서의 이야기는 또 다르니 한번 후기를 작성하려고 한다. 벌써 키보드를 두드리는 소리가 경쾌하다.
0. Prologue
다시 소개를 하자면 저희의 팀명은 DolAndDool 이며 팀원은 gs25, stonejjun03, yijw0930 이다. 우리팀의 포지션은 yijw가 자료구조와 역겨운 구현들을 맡고, 본인이 아이디어 및 관찰을 맡으며, gs25가 관찰, 수학 및 서포팅을 맡는다.
팀연습을 통해서 yijw-gs25 조합이 수학 문제 해결이나 gs가 툭 던져 yijw가 구현으로 마무리 하는 호흡을 보여주었으며, 특히 stonejjun-gs25 조합이 관찰을 엮거나 툭 발전시키기, 풀이의 큰 틀 잡는 감은 훌륭하지만 풀이의 완성도가 떨어지고 증명이 약한 stonejjun과 꼼꼼한 증명하기, 관찰 툭 던지기, 반례 찾기에 강점이 있는 gs25가 만나서 굉장한 시너지를 내는 경우가 많이 보였다. gs25가 정말 많은 노력으로 실력이 가파르게 상승해 팀의 훌륭한 마지막 퍼즐조각이 되어주고 있었다.
나는 다양한 이슈로 개인 연습을 별로 못했지만, yijw는 나름 꾸준히 연습한 것으로 보이며, gs25는 굉장히 열심히 달려왔다. 심지어 시간도 거의 맞지 않아, 방학동안 3번 남짓의 팀연습을 하게 되었는데, 사실 팀연습을 별로 하지 않을 계획이긴 했으나, 예상보다 너무 적게 하게 되었다.
그래도 다행이 대회 직전 팀연습에서 꽤나 괜찮은 결과를 내었으며, WF 진출의 꿈을 안고 싱가포르로 향하게 된다.
1. from D-2 to D-1
가는 비행기에서는 겨울왕국 2를 2번 보며 좋아하는 노래 중 하나인 show yourself를 마음에 새겼다. 도착해서는 gs25의 강력한 추천과 함께 칠리크랩을 먹었으며, 꽤나 맛있게 먹고 잠에 들었다.
대회 전날, 우리 팀은 아직 팀노트를 뽑지 못했다는 사실에 불안에 떨었다. 다행이도 USB를 통해 뽑을 수 있다는 대답을 들었다. 오프닝 세레머니와 함께 맛있는 점심을 먹고, 사전 연습 세션에 참여했다. 먼저 팀 대표 사진을 찍고, 문제 풀이에 들어갔다. 내가 S1 대신 S를 쓰거나, 복붙을 했다가 틀리거나 하는 등의 이슈가 있었지만 덕분에 인터렉티브의 세팅과 활용, 파일의 -를 복사하면 깨진다는 사실 등을 알아낸 유익한 시간이었다.
이후 친목 세션이 있었는데 많은 사람들과 이야기 해보고 싶었지만, 언어의 장벽과 자신감으로 인해 쉽게 입을 열지 못했다. 체스는 다 까먹어서 Scotch-Gambit Forgotten variation 을 사용하여 모두를 웃겼다. 저녁은 엄청 훌륭한 뷔페였으며, 옆에 KUB1 일본팀이 앉아 말을 걸고 싶었으나, 심리적 고민 1e9+7번 후에 실패했다. 그래도 일본의 physics0523님이 오셔서 말을 걸어주셨으며, 명함도 받고, 츄니즘과 작혼을 한다는 것도 알아내었다. 다만 작혼 서버가 달라서 친추를 못한 것이 한이다.
이야기가 샜지만, 밤에는 서울 리저널때의 Karuna의 조언처럼 게임 방송과 유튜브를 보며 잠을 청했다. 다만, 새벽 4시에 깨버려서 불안한 바삭, 꿀꺽 소리와 함께 유희왕 하얀숲(White Forest 줄여서 WF) 덱을 조금 하다가 잤다. 그래도 컨디션은 나쁘지 않았다.
2. from -2H to Start
2024 서울리저널의 경험이 나쁘지 않았기 때문에 계속해서 비슷하게 하려고 했다. 신이 된다는 마음가짐, 혹은 신을 죽이는 자가 되겠다는 마음 가짐으로 '카밋포이나' 커버곡을 계속 들어주고, 사카마타 프렌즈 인형과 함께 했다. 올해는 특별히 돌기도문을 한번 읽으며 다짐을 하였다. gs25가 대회 시작 직전까지도 자려고 해서 굉장히 불안했지만, 나쁘지 않은 컨디션과 함께 대회는 시작되었다.
3. 불안한 Opening ( 00 : 00 ~ 01 : 15 )
하던대로 yijw가 ABCD, 내가 EFGH, gs25가 템플릿 세팅 후 IJKLM을 맡게 되었다. E는 읽다가 걸렀고, F는 prefix, cht, casework, prefix 뽀이하게 하면 될 것 같다는 생각을 했으며, G는 꽤나 쉽게 풀이가 나오게 되었다. 다만, casework가 필요할 것 같아 풀이를 정리하고 있었다. 그 와중에 gs25는 가장 많이 풀린 L을 잡았으며, yijw는 D 풀이를 내었다.
gs25가 L을 짜고 틀렸으며 멍한 모습을 보여주는데 술이 덜 깬거 같다는 말에 내 귀를 의심했다. 그래도 이어서 내가 G를 잡고 예제가 나오지 않았다.
굉장히 불안한 상황이었지만, 침착함을 유지하고 출력 후 컴퓨터를 넘겼다.
다행히 gs25가 정신을 다 차리고 L을 고쳤고, 나는 틀린부분을 찾은 후 침착함을 가져다 버리고 실수로 d.cpp를 한번 제출해 버린 다음 g에서도 1 WA를 기록했다.
결국 컴퓨터를 넘겨받은 yijw가 A를 풀고 나도 G에 return 한 줄을 추가하여 고치는데 성공했다.
30등선에서 유지되며 별로 좋지 못한 시작이었다.

4. 폭발력의 Midgame ( 01 : 00 ~ 04 : 00 )
gs25는 L 이후에 J를 잡기 시작했으며, yijw는 풀이가 나와있던 D를, 나는 새로운 풀만한 문제를 찾으러 떠나다가 H가 그나마 할만해 보였다.
둘 다 조금씩 삐끗하는 듯 보였으나, 얼마 지나지 않아 간식 테이블에서 간식을 먹으며 고민하니 gs25의 J와 yijw의 D가 둘다 ac를 받게 되었다! 이때를 기점으로 5등이라는 한자릿수 등수 대에 들어가게 되었지만, 추가 풀이가 나오지 않았기 때문에 키보드가 비고 순위가 쭉 내려갈 상황이었다.

여기서 3시간 이상 남은 시점이기에 나는 각자 문제를 잡는 것을 주장했지만, 스코어보드를 근거로 gs25,yijw 둘이 같이 i,k를 보기 시작했다. 그 와중에 나는 H의 풀이가 거의 정리되어 구현에 들어가기 시작했다.
옆에서는 K(의 사풀)과 I의 풀이가 완성되었고, 나는 H에서 10번의 질문 쿼리중 2번만 쓰면 되는 기현상을 겪다가 쉬울거라고 생각한 케이스가 생각보다 중요하고 까다롭다는 것을 깨달아 I의 yijw에게 자리를 비켜주었다.
수학에 강점이 있는 gs25와 같이 H를 토론하기 시작했다. 서로 관찰 추가, 풀이 생성, 반례 찾아주기, 풀이 수정의 환상적인 전성기 바르셀로나급 티키타카를 펼쳤다. 팀연습때 몇번 나왔던 둘의 시너지가 훌륭하게 발휘되는 순간이었다. 그 와중에 역겨운 구현도 잘 밀어주는 yijw가 i에서 WA를 조금 받았지만, 꿋꿋히 싸움을 이어나가고 있었다.
그러다가 yijw의 I가 AC를 받아내고, 이어서 gs25와 내가 페어코딩 (내 코드에 gs25의 훌륭한 return 0; 추가 매드무비) 를 통해 이어서 H에서도 승전보가 울리게 되었다!!!!
각자의 완벽한 포지션 배정과 실행으로 등수는 순식간에 한자릿수 대로 올라가게 되었고, 환호성이 터져나왔으며, 온몸에 전율감과 안도감이 맴돌게 되었다. 이 시점에서 처음 목표였던 WF 진출은 사실상 확정이라고 생각이 되었다.


5. 변화와 증명의 Ending. ( 04 : 00 ~ 05 : 00 )
DolAndDool의 게임은 끝나지 않았다. 최후의 솔브를 위해 F와 K에 대한 문제 읽기와 고민을 했으며, yijw는 C를 마저 구현하러 키보드를 잡았다. 나와 gs25는 F,K를 돌려읽고 토론을 시작했다. 나는 K에서 답이 N-lis 일지도? 라고 했다가 혼났고, gs25는 그 전에 찾아낸 결론인 답이 $i - 1 + n - j + ( i - j 구간의 inversion-counting)$ 의 최솟값이라는 말을 하였다. 내 N-lis가 틀린 이유를 찾다보니 gs25의 의견이 다시보였고, 저 식에 대해 좀 더 보려고 하니 바로 단조성이 있을 것 같은 feeling이 들었다.
다만 나는 2022 SCPC 등의 ptsd가 있기 때문에 증명을 확실히 하고자 하였고, 그 와중에 gs25가 F에서 내가 미리 관찰해서 넘겨준 내용에 더해서 애매한 dp식을 세워놓고 같이 발전시켜보자고 했지만, 나는 F의 가능성이 별로 없어보였고 이미 단조성 증명에 온 신경이 쏟아져있었다. 조금의 산책후에 나는 gs25에게 좋은 소식과 나쁜 소식을 들고 왔다. 나쁜 소식은 내가 사실 F 고민을 안했다는 것. 그리고 좋은 소식은 K의 단조성 증명이 끝났다는 것.
yijw는 C의 가능성이 별로 높지 않다고 했고, 우리는 최후의 45분을 K에 도전하기로 하였다.
서울리저널의 실수를 반복하지 않기 위해 셋이 풀이를 깔끔하게 찾기, 공유하기, 이해하기의 시간을 가졌고, 이 과정에서 구간의 inversion counting 관련하여 시간복잡도 이슈가 발견되었다. 추가 고민을 통해 PST풀이 -> ODC식의 풀이 -> 투포인터를 이용한 advertised $O(Nlg^2N)$ 의 풀이가 완성되었다.
이때 N=500000 이었기 때문에, gs25가 펜윅 사용을 주장했고, 우리중 유일하게 펜윅 구현이 가능한 gs25가 펜윅 부분을 구현하였다. 나머지는 서울 리저널 때처럼 yijw가 중간에서 키보드를 잡고, 양쪽에서 보면서 피드백과 오타 수정을 도왔다. 구현끝에 결국 예제가 나오게 되었고 제출을 하였다.
길게 돌아가는 채점 중... 이라는 메세지.
같이 길어지는 나의 다양한 부두술과 함께...
Finally AC!
서울리저널때와는 다르다는 것을 보여주는 화려한 마무리였다.
남은 시간은 기쁨을 만끽하고 C에 제출을 시도하며 대회의 종료를 맞이하였다.
6. Afterstory
내가 개인적으로 예상한 등수는 6~7등이었다. 또한, 한국팀들이 전체적으로 부진했기 때문에, 핸드폰 안에서만 떠들며 시간을 조금 보냈다. 그와중에 cross_ratio가 몇 솔브인지 굉장히 궁금해했고, 나는 K풀이를 질문하고 단조성이 있는지 놀라는 척을 하며 화답했다.
얌전히 시상식장으로 가는 길에 physics0523을 다시 만나 "You team good?" 이라 물어보니 "Soso" 라는 답을 듣게 되었다.
7. Is the Road Golden....???
팀원들에게는 동메달인지 은메달인지 모르겠다고 했지만 사실 은메달을 예상하고 있었다. 그렇게 스코어보드가 하나씩 공개 되는데 생각보다 많은 제출이 299분에 된 것을 볼 수 있었다. 근데 대회장에서 마지막 1분동안 아무런 환호성을 듣지 못했기 때문에 다 WA일 것이라고 예상했고, 이에 더해서 실제로 많은 팀들이 freeze (4시간 시점) 이후에 솔브 수를 늘리지 못해서 기대감이 점점 증폭되었다.
점점 금메달이 농담에서 현실로 다가오는 중에 마지막 기로가 니왔다. 남은 은메달은 한자리였고, 일본의 KUB1팀이 못 풀면 우리가 4등으로 금메달, 풀면 은메달이 될 것 같은 상황이었다. physics0523의 soso에서 어느정도 예상했듯이 KUB1은 프리즈 이후 추가솔브를 기록하며 우리 위로 올라가게 되었다.
우리팀은 그래도 기뻐하고 자축하며 약간은 아쉽지만 5등도 목표에 비해 굉장히 높은 수치이기 때문에 기뻐하고 있었는데, 갑자기 std_abs팀이 freeze이후 260분 최종 제출, 264분 최종 제출이 둘다 WA를 받는 대참사가 일어났다. 장례식인가요? 아니 축제인데요?
걷잡을 수 없는 놀람과 환호성을 작게 지르게 되었고, 진정을 하며 우리 차례를 기다렸다.
그리고... 당당하게... APAC 4등!!!
이번 대회에서의 돌기도문은 길을 걷는, 길을 만들어 걷는자. 였기 때문에 내가 만들어 걸은 길은 Golden Road가 되었다. 그렇게 다음날은 비행기에 탈 때까지 인스타, 디코, 에브리 타임 등등에 자랑하고 계속해서 '내가 누구? ICPC APAC 2025 Gold Medalist!' 를 되뇌이며 시간을 보내고 마무리 되었다.



8. Epliogue
기본적으로 큰 말림 없이 세명이 모두 잘해주었고, DolAndDool 팀이 낼 수 있는 거의 최고의 성적을 냈다고 생각한다.
이에 더해 이정도 퍼포먼스의 3명 (CF 2560,2250,2110) 이 모여서 낼 수 있는 결과 중에도 거의 최고라고 생각한다. 그만큼 서로 다양한 대화를 통해 서로를 알아갔으며, 그 전에 이미 3명의 장점과 단점이 잘 맞아떨어지는 부분이 있다고 생각한다.
특히 늦게 시작했지만 엄청난 연습량으로 따라와주어서 마지막 퍼즐 조각이 되어준 gs25와 항상 묵묵히 고단한 작업을 맡아주는 yijw에게 감사하며, WF에서도 힘내자는 말을 하려고 한다.
그 밖에 심리적으로, 물리적으로, 학업적으로 도와준 정말 수많은 사람들에게 감사한다.
마지막으로 외쳐본다
Let DnD go WF!
'일상 > 대회 참가 후기' 카테고리의 다른 글
ICPC 2024 서울 리저널 본선 후기 (36) | 2024.12.02 |
---|---|
DolAndDool 의 2024 ICPC 준비기 (0) | 2024.12.01 |
SCPC 2022 본선 후기 (4) | 2022.09.17 |
UCPC 2022 본선 후기 (2) | 2022.07.25 |
ICPC 2021 예선 후기 (5) | 2021.10.10 |