티스토리 뷰

대회 후기

IOI 2025 후기

byunjaewoo 2025. 8. 6. 16:55

7/27 ~ 8/3에 2025 IOI에 응시했다.

Day 1 201.25점(60위) + Day 2 247.45점(11위)로 종합 24등으로 금메달을 받게 되었다.

처음 나가는 IOI라 긴장을 많이 했고 아쉬운 점들은 몇가지 있지만, 결론적으로 금메달을 받게 되어 기쁘다.

특히 대한민국 대표팀 4명 모두 금메달을 받아서 한국 최초로 4금을 받게 되었다. 축하하세요!

7/25 ~ 7/27 볼리비아 도착

ㅁㄴㅇㄹ

7/28 개회식

ㅁㄴㅇㄹ

7/29 볼리비아 투어

ㅁㄴㅇㄹ

7/30 Day 1 후기

별 생각 없이 그냥 잘 보면 좋겠다는 생각으로 응시했다.

0:00 ~ 0:10 (0 / 0 / 0 = 0)

문제를 읽고 섭테 배점과 조건을 종이에 모두 정리했다.

1번은 100점을 받아야 되는 문제처럼 보였다.

2번은 70점을 받고 output only를 적당히 긁어야 되는 문제처럼 보였다.

3번은 좀 어려워 보였는데 잘 생각하면 고득점을 할 수 있을 것 같았다.

1, 2, 3번 순서대로 보기로 했다.

0:10 ~ 0:29 (39 / 0 / 0 = 39)

1번 문제의 앞쪽 자명한 섭테들을 먼저 구현했다.

0:29 ~ 1:28 (39 / 70 / 0 = 109)

1번 문제의 뒤쪽 섭테들을 고민했지만 별로 생각이 나지 않아 2번으로 넘어갔다.

2번의 70점 풀이는 금방 떠올릴 수 있었다. 적당히 조건을 나눠서 풀면 한 경우는 선형에 풀리고, 한 경우는 O(NsqrtN)에 바운드가 되어서 해결할 수 있었다. 이를 구현해서 맞았다.

1:28 ~ 2:11 (39 / 70 / 44 = 153)

2번 문제의 output only는 노력에 비해 얻을 수 있는 점수가 적을 것 같아 3번으로 넘어갔다.

우선 3번 문제의 앞쪽 서브태스크들을 구현해서 맞았다.

2:11 ~ 2:33 (39 / 76.17 / 44 = 159.17)

2번 문제의 output only를 자명한 꼴을 반복해서 채워서 점수를 조금 얻었다.

2:33 ~ 2:53 (39 / 76.17 / 72 = 187.17)

3번 문제에서 일반 그래프에서도 dfs 트리를 구성한 뒤 트리와 비슷하게 해결할 수 있다는 것을 알아내고 뒤쪽 섭테를 긁었다.

2:53 ~ 3:03 (39 / 76.17 / 86 = 201.17)

3번 문제에서 비슷한 방식을 약간 개선해서 점수를 조금 더 받을 수 있었다.

3:03 ~ 4:37 (39 / 76.25 / 86 = 201.25)

사실 뭘 했는지 기억이 잘 안나요 남은 2시간 동안 1번을 무조건 풀어야겠다고 생각하고 1번을 계속 봤는데 평균을 한 번 날린 이후로 뭘 해야 될지 전혀 모르겠어서 방황하다가 3번에서 깔짝하다가 2번에서 output only 그럴듯해보이는 NsqrtN construction을 했는데 알고보니까 실패였고 다시 1번 생각하다가 2번으로 갔어요.

2번에서 0.08점을 더 얻었다.

4:37 ~ 5:00 (39 / 76.25 / 86 = 201.25)

1번에서 섭태를 풀기 위해 적당한 풀이를 짰지만 모두 틀린 풀이였고 내 점수는 더 올라가지 못했다.

대회 후

내가 못 푼 1번 문제가 어려운 문제였을 것이라고 생각해서 내 점수가 나쁘지 않다고 생각했는데, 대한민국 국대들 점수를 듣고 나서 충격에 빠졌다. 1번 문제는 알고 보니 쉬운 문제였고, 1번에서 61점이 비어버린 내 점수는 너무나도 초라했다. 스코어보드를 보니 다른 국대들은 4, 5, 20등이었고, 나는 60등이었다. 금컷은 28등, 은컷이 84등이라는 사실을 알게 된 뒤 더욱 위기를 직감했다. 금컷까지는 30점의 차이가 있었고, 은컷까지는 20점의 차이가 있었다. 금메달들 사이에 홀로 선 은메달이 될 것 같아서 초조했고, 스트레스를 받았다.

7/31 엉엉

원래라면 Fellowship and Integeration Day로 글로벌 인재들과 교류할 시간이었지만, 그럴 기분이 아니라서 그냥 숙소에서 쉬었다. 하루 종일 침대에 누워있었다.

밤에 기분 전환 및 실력 증진 목적으로 코포 버추얼을 돌았다. 2750 정도 퍼포먼스가 나왔다.

8/1 Day 2 후기

금메달을 받기 위해서는 반드시 Day 2를 엄청 잘 봐야 한다는 부담감이 있었다.

0:00 ~ 0:10 (0 / 0 / 0 = 0)

문제를 읽고 섭테 배점과 조건을 종이에 모두 정리했다.

1번은 Day 1 1번처럼 반드시 풀어야 하는 문제처럼 보였다.

2번은 만점을 받기는 매우 어려워보였다.

3번은 섭테까지는 할만해 보였다.

0:10 ~ 1:00 (44 / 0 / 0 = 44)

1번 문제에서 섭테 풀이를 생각하고 exchange argument로 순서를 고정하는 관찰을 한 뒤 맞는지 검증했다.

1:00 ~ 1:10 (44 / 30 / 0 = 74)

2번 문제로 넘어와 30점을 긁었다. 어렵지 않게 해결할 수 있었다.

1:10 ~ 2:28 (44 / 64.45 / 0 = 108.45)

2번 문제에서 K=4인 섭테를 긁으려고 시도했지만 계속 틀려서 당황했다.

장시간의 디버깅 끝에 풀이가 틀렸다는 사실을 깨닫고 K=6인 풀이로 바꿔서 점수를 얻었다.

이당시 대회 시간 절반이 지났는데 총 점수가 108점이라 매우 초조했다.

2:28 ~ 2:47 (82 / 64.45 / 0 = 146.45)

1번 문제로 다시 돌아와 전체 문제 풀이에 대해 생각해봤지만, 잘 생각이 나지 않았다.

그러나 다행히 마지막에서 두 번째 섭테의 풀이가 떠올랐고, 이 섭테와 풀이를 알지만 구현하지 않은 섭테들을 구현해 점수를 82점까지 올렸다.

2:47 ~ 2:58 (82 / 64.45 / 37 = 183.45)

3번 문제를 처음으로 생각하기 시작했다. 우선 단순한 Union-Find로 해결할 수 있는 앞쪽 세 개의 섭테를 구현해서 맞았다.

2:58 ~ 3:57 (82 / 64.45 / 58 = 204.45)

3번 문제에서 L=0, R=N-1인 조건에서의 풀이를 생각했다. 가로를 하나의 정점 취급하고 이를 계속 Union해나가는 방식의 풀이였다. 세그먼트 트리 등 생각보다 구현이 길어져서 불안했는데, 디버깅 끝에 섭테 4의 점수가 나왔다. 그러나 Q 조건만 다른 섭테 5를 틀려서 당황했다. 내 풀이가 틀렸는데 우연히 섭테 4를 맞은 것인지, 풀이는 맞지만 구현에 실수가 있어 섭테 5를 틀린 것인지 알 수 없었다.

3:57 ~ 4:11 (82 / 64.45 / 83 = 229.45)

구현에 실수가 있을 것이라고 가정하고 더 생각해보니 사소한 실수가 있어 수정했더니 섭테 5가 맞았다.

4:11 ~ 4:40 (100 / 64.45 / 83 = 247.45)

1번으로 돌아와 풀테를 다시 생각했다.

생각해보니 한 가지 전처리를 통해 마지막에서 두 번째 섭테와 같은 방식으로 해결할 수 있다는 것을 알게 되었다.

이를 구현했는데, 구현에서 자꾸 오류가 생겨서 20분 동안 1분에 한 번씩 제출하면서 디버깅한 끝에 겨우 맞을 수 있었다.

4:40 ~ 5:00 (100 / 64.45 / 83 = 247.45)

남은 20분 동안 실질적으로 할 수 있는 것이 없어 점수를 더 얻지 못했다.

대회 후

Day 2를 Day 1보다 훨씬 잘 풀었다는 것은 실감할 수 있었지만, 금메달이 될지는 애매해서 불안한 마음으로 스코어 보드를 봤다. 결과는 대한민국 국가대표팀 전원이 금메달권에 들었다! 매우 기뻐서 소리를 지르면서 조금 뛰어다녔다. ㅋㅋ! 나는 Day 2 11등으로, 생각보다 더 잘봐서 금메달을 받을 수 있었다.

8/2 폐회식

8/3 ~ 8/5 한국 도착

 

'대회 후기' 카테고리의 다른 글

2026 겨울학교 1차 모의고사 후기  (2) 2026.01.12
NYPC 2025 후기  (2) 2025.10.26
Codeforces #1012 Div.1  (2) 2025.03.24
2025 IOI 국가대표 선발고사 후기  (5) 2025.03.05
NYPC 2024 본선 후기  (3) 2024.10.27