일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Implementation
- 컨벡스 헐
- BAPC
- 2794
- JOI 2018
- 기하 알고리즘
- IOI 2013
- 14179
- 그래프
- DP
- 볼록 껍질
- Z 알고리즘
- convex hull
- codeforces
- 8192
- Manacher's algorithm
- ICPC 연습
- 구현
- JOI
- acmicpc.net
- 백준 온라인 저지
- 코드포스
- POI Solution
- 세그먼트 트리
- boj
- Divide and conquer optimization
- BAPC 2018
- Manacher 알고리즘
- 기하
- Z algorithm
- Today
- Total
프로그래밍 연습장
APIO 2018 후기 본문
내가 고등학생 신분으로서 참여하는 마지막 정보 대회라 결과와 상관없이 꼭 후기를 써야겠다고 마음먹었었다. 그런데 내신 공부가 너무 빡세서.. 2주가 지나고서야 이 문장을 쓰고 있다. 5월 12일 토요일, 러시아에서 개최되고 한국의 아주대학교에서 시험을 친 아시아 태평양 정보올림피아드, APIO에서 다행히 은메달을 받을 수 있었다.
올해 대회는 평소와는 다르게 러시아 pcms라는 환경에서 진행됐다. CMS와는 좀 많이 다르고, 왠지 조금 구진 돔저지 느낌이 나는 채점 사이트였다. 인터랙티브도 지원 안 되는 느낌이었지만…. 연습대회 때 배치로 인터랙티브 느낌을 내는 문제가 나와서 본대회때도 나오려나 했지만, 그런 건 없었다. 전체적으로 문제가 되게 내가 추구하는 스타일의 깔끔한 문제였다. 물론 내가 추구하는 스타일이라고 내가 잘 푼다는 뜻은 아니다. 대회 직전에 백 점만 맞자.. 백 점만 맞자.. 하고 기도했다. 결국 12/19/71로 총 102점을 받았다. 은메달!
제일 먼저 붙잡았던 거는 3번 문제였다. 그래프에서 BCC를 묶은 다음, 트리로 만들어 DP로 해결했다. 몇 가지를 고려해주느라 몇 번 수정했는데, 그 때 큐가 막혔던 게 조금 짜증났다. 뭐 결과에 영향은 없었지만. 하지만 내가 “단절선”에만 생각이 머물러 있었다면 정해는 “단절점”을 이용하는 풀이었다. 멍청한 탓에 Vertex-cactus 그래프에 대해서만 답이 나올 수 있었고, 총 71점의 부분점수를 얻을 수 있었다.
1번 문제는 대회 시간에 어떻게 푸는지는 대충 알았다. 각 상점 종류마다 거리에 따른 가장 먼 상점 그래프를 유지해가면서, x좌표에 대해 가장 높은 점이 무엇일까를 계산하는 문제였다. 하지만 보자마자 APIO 2016의 Fireworks의 악몽이 떠올랐다. 며칠 전 연습용으로 APIO 2016을 풀었는데, 구현을 하느라 며칠을 날리고도 하지 못했던 기억이 난다. 내가 이런 껍질 관리하는 작업에 굉장히 약한 것 같다 ㅠㅠ 연습해야겠다. 암튼 그래서 그냥 넘겼다. 해법 소스를 보니 꽤 간단하게 구현되는 것 같기도 했다.
2번 문제는 원들을 가지고 어떤 과정을 거쳤을 때의 결과를 예측하는 문제였다. 이 문제도 아무리 생각해도 답을 모르겠는 것이었다. ㅜㅠ 그래서 긁을 수 있는 x축 위에 있는 경우에 대해서만 모두 긁고, 한 한 시간 동안은 겁나 가만히 있었다. 풀이는 꽤 직관적인 assertion 하나를 활용하는 풀이인 듯했다.
항상 대회가 끝나면 아쉬움이 남는다. 그래도 이번에는 마지막에 은메달 하나 건져갈 수 있어서 마음이 놓인다. KOI 전국대회는 못 나가지만 마음으로 응원해야겠다.... 고등학교동안의 정보과학 공부는 여기까지! 내신에 모든 것을 쏟을 때다. 학점이라도 잘 받아야지...
'끄적끄적' 카테고리의 다른 글
20200803 PS (0) | 2020.08.10 |
---|---|
UCPC 2020 후기 (0) | 2020.08.02 |
2020 웹 스터디 (0) | 2019.12.24 |
2019년을 돌아보며 (0) | 2019.12.21 |
C++11: emplace (1) | 2017.10.06 |