eff3ct's st0rage Dev Blog

2022 HCPC 출제 및 운영 후기

출제 후기

난 총 세 문제 출제했다. 먼저 완성되었던 문제들 순서로 소개해봄.

26148 // 세로 달력 (예상 난이도 - 브1 ~ 실5 / 실제 난이도 - 브1)

학원에서 알바하다가 달력보고 만든 문제였다. 원래 문제는 윤년 계산도 없었고 그냥 완전 구현으로 낼 생각이었다. 근데, 내고 나서 보니 값이 안바뀐다는걸 알아차려서 그냥 윤년 계산 포함해서 수정했다. 결국에는 윤년 판단 하는 문제로 바뀌는데 그걸 알아차리는 난이도가 브1~실5 정도로 예상했는데 정확했던 듯 하다. 다들 잘 풀었다.

26161 // 트리의 팔 (예상 난이도 - 플1 / 실제 난이도 - 플1)

음.. FFT를 내고 싶어서 냈던건데 후회하고 있다. 질문에서 정해코드(였던) 저격당하고 그닥 유쾌하지 못함. 원래 문제는 조금 달랐다. 제약이 다른게 걸려있었고 풀이가 센트로이드가 들어갔는데.. 아무래도 그걸 HCPC에 내는건 그래서 너프시켰다. 검수진 한 분이 실수오차가 안터진다고 말씀해줬는데, 내 나름대로 만든 테케는 그닥 문제가 없었다. 그냥 랜덤 트리, 치우친 트리, 선형적인 트리 형태로 테케를 만들었는데 하나 놓친게 하나의 노드에 모든 노드들이 달려있는 형태였다. 그 테케가 있었으면 아마 정해코드가 안터졌을건데.. 어.. 할말이 없다.

현재는 그래서 정확도를 좀 많이 높인 버전을 정해로 넣어두고 재채점을 기다리고 있다. 뭐 아무튼 이건 내 실수이니 할 말이 없긴 함. 대회에서는 마지막 프리즈 이후에 풀렸다. 안풀릴까봐 조마조마 했는데 풀려서 진심으로 신났었다. 난 이제 무죄임.

팔이라는 소재를 떠올린건 그냥 트리를 보다보니 뭔가 사람처럼 생겼다는 생각을.. 했다. 피곤했나봄. 그래서 DFS 한번 해주고 그걸 이용해 컨볼루션 계산하는 문제로 냈다. 별루 재미는 없다고 생각한다.

그리고 원래 쿼리 하나만 계산하는 문제였는데 검수진 중 한 분이 prefix sum으로 잘 뚫어오셔서 그 분 조언에 따라 2e5개 쿼리 날리는 걸로 바꿨다. 근데, prefix sum 정해인 쪽이 더 좋은거 같기도 하고.. 뭐 여러모로 마음에 들진 않음.

26152 // 플래피 버드 스코어링 (예상 난이도- 골5 / 실제 난이도 - 실1)

가장 마지막에 냈다. 문제들 모아놓고 보니 비기너에 적합한 이분탐색 문제가 하나도 없대서 내가 만들어왔다. 만들고 좀 잘 만든거 같은데 생각하고 있었다. 근데, 코포에 사고과정이 거의 비슷한 문제가 있더라..? 대회 끝나고 나서 전해 들었다. 내 이름을 문제에 넣기 싫어서 운영진한테 “문제에 이름 박히실 분?” 하고 물어보니 재무부장님이 넣어달라고 하시더라. 그래서 재무부장님 이름이 들어갔다는 비하인드.

틈새를 잘~ 계산하면 단조 감소한다. 거기다가 대놓고 그냥 이분탐색하면 된다. 근데, 검수진 + 백준에서 푸신 분들 중에 오프라인 쿼리로 푼 사람들이 많았다. 음.. 그냥 고였다는 생각 밖에 안들었음.

난 골드정도 찍지 않을까 싶었는데, 실버1이 찍히더라 뭐 그게 그거긴 함. 급하게 낸거 치곤 잘 냈다고 생각하는 편인데, 도대체 왜 그랬는지 모르겠는데 비기너 디비전 대부분이 시간복잡도 NQ로 비벼서 다 TLE나고 결국에는 4팀만 풀었다. 미안해요. 근데, 내 의도처럼 TLE를 받은건데 묘하게 미안하네.

운영 후기

나는 문제 출제하고 solved.ac 배너 배경 디자인하고 당일 스태프로 있었다. 사실 그렇게 크게 뭔갈 많이 하지 않았다. 랩실에 데베시가 겹쳐서 도와주고 싶어도 물리적인 시간 자체가 안나왔다. 다른 운영진분들이 고생 많이 했다. 백준에서 서버 여니 스팟보드가 돼서 당일에 슥슥 까는걸 내가 했는데 나는 재밌었다. 별로 호응 유도를 하지 않았는데 사람들 반응 잘해줘서 고마웠다. 착한 사람들임.

사실 내년에는 내가 회장이라 이걸 다시 내가 운영해야 하는데 벌써부터 무섭다. HCPC를 준비하는데 많은 시간이 있지 않았었는데 너무 빡빡해서 힘들었다. 난 참가를 하고 싶은데 회장으로 있으니 이제 참가도 못하고 4학년은 되어야 참가할 수 있을텐데 그때 난 아는사람이 과연 있을까..ㅋ