Intro

저는 2023년 말에 PS를 처음 시작했습니다. 그리고 2024년 대학교에 입학하고, 모 동아리 회원분이 게이트(?)를 열어 주셔서 인생 첫 오프라인 대회로 SCSC 2024에 참여했습니다. 이번에는 동아리 회장이 되어 SCSC 2025에 참여하게 되었네요… 인생 참 모르는 일입니다.

대회 전

solved.ac 디스코드 서버에서 codeforces 버추얼을 자주 같이 하시던 분들인 jshyun912님이랑 tjrn3712님과 서울대입구역 호랑이면이라는 라멘 집에서 점심을 먹고 대회장에 도착했습니다. 버스를 타려다가 줄을 보고 황급히 택시를 잡았습니다.

스코어 보드 닉네임은 늘 쓰던 aerae 대신 ohwphil fan club으로 정했습니다. Hello, AlKon이 정말 무리한 일정으로 폐기될 뻔 했던 대회였는데, SCSC 임원이신 ohwphil님께서 SCSC 검수도 유기하시고 도와주셨습니다. 그래서 농담 반 감사한 마음 반으로 지었습니다. 다시 한 번 감사드립니다.

동아리 부원 한 분을 먼저 뵙고 (실명은 아는데 핸들을 못 찾겠네요 ㅠㅠ), 등록하려고 줄 서다가 작년 ICPC 팀원이었던 yookwi도 만났습니다, 이후 작년 SCSC 대회에서 제 싸인을 받아가신 toycartoon님과 합류하여 고수분들의 싸인을 수집하러 다녔습니다. ychangseok님, oh040411님, iccodly님, annyeong1님, pizzaroot님, nflight11님, asp1939님, seokgukim님 등 1차로 싸인 수집을 완료하고, 자리에 앉았더니 마침 옆자리에 lunarlity님이, 뒷자리에 pgggggggggh님이 앉아 계셔서 싸인을 받아냈습니다. 여기서 끝이 아니다~ (대회 이후에 계속)

호시노 인형으로 디코에서 어그로 끌다가 주변 분들의 따뜻한 시선도 느꼈습니다.

이후 대회장에 지각했지만, 대회가 연기되는 바람에 겨우 도착한 작년 ICPC 팀원이었던 motsuni04를 만나고, 대회도 슬슬 시작됐습니다.

우당탕탕 대회

A (0:02 AC)

사실 작년 SCSC A번이 엄청난 구현 문제였어서 많이 쫄아있었습니다. 지문을 슥 보니, 이번에도 구현 문제인가? 생각이 들었습니다. 하지만 코드포스 짬으로 다져진 (맥레 민트) A번 찍기 실력으로 지문을 스캔했습니다. 주사위가 $\frac{n(n+1)}{2}$개 있고, 서로 면을 맞대서 뭐가 한 면씩 가려지는 것 같았습니다. 구하려는 값은 최솟값과 최댓값의 합입니다. 최대라면 $1$부터 $6$ 중에 $1$이 가려지면 될 것 같고, 최소일 땐 $6$이 가려지면 될 것 같았습니다. 맞는 풀이인지는 아직도 모르겠지만, 이렇게 하면 $\frac{n(n+1)(20 + 15)}{2}$가 나옵니다. 예제 1, 2가 나오길래 믿음의 제출.

퍼솔을 할 뻔했지만, 10초 차이로 motsuni04에게 빼앗겼습니다. 이 친구가 코드포스 첫 10분에선 누텔라 퍼포가 나오는 친구다보니… 많이 아쉽고 얄밉지만 실력은 실력인가봅니다. 아무튼 대회 중 2번째 제출 및 2번째 AC를 달성했습니다. 별 의미 없지만.

B (0:58 AC +4)

어.. 이건 첫 접근을 잘못 했습니다. 모든 올바른 응애 문자열이 길이 $6$으로 가질 수 있는 패턴이 3종류라고 생각했지만, H OH사이에 HOH를 계속 끼워넣는 식으로 문자열을 구성하면 HHHHH...OHOH...OH꼴의 문자열도 나올 수 있었습니다. 이후 스택을 고민하다가, 스택은 너무 웰노운이라는 마인드로 과감히 버렸습니다. 이후 그리디하게 O를 각각 자기 왼쪽으로 가장 멀고, 오른쪽으로 가장 가까운 H 두 개와 매칭시켜주는 방식으로, 그리디 + 투 포인터로 해결하였습니다.

빠르게 풀기 위해 파이썬을 사용하였는데, 파이썬 문자열 슬라이싱이 많이 느리다는 사실을 수많은 시도 끝에 몸으로 배우게 되었습니다. 역시 Rust가 가장 잘 맞는 것 같습니다. 코딩만 빨랐어도 ㅠㅠ

I (1:57 AC +2)

?? 왜틀림? 체커 문제가 있나 대회 종료 후 회식 자리에서 ohwphil님께 여쭤봤는데, 그냥 제 이슈였던 것 같습니다. 아이디어 자체는 너무 쉬워서 15초만에 냈고, 구현도 5분이 안 걸렸지만, 디버깅은 1시간이 걸렸습니다. C에서 맞왜틀만 안 했어도 등수가 훨씬 높아졌을 텐데 너무 아쉬웠습니다. 근데 아직도 왜 틀렸는지는 모르겠습니다. 뭘 고쳤는진 모르겠지만 아무튼 맞았습니다.

이후 F는 감이 안 잡혀서 대회 끝까지 풀지 못했고, G를 푸느라 노트 5장과 3색 볼펜을 사용했지만, 결국 못 풀었습니다. 엉엉
H번은 트리에서 간선 하나를 제거하면, 연결 요소가 두 개가 되고, 유효한 간선을 긋는 경우의 수는 자식 노드의 개수(?)를 트리 DP로 구하고, 정점이 $N$개이므로, $N$에서 뺀 값을 곱해주면 될 거라는 생각을 했지만, 트리와 DP 모두 쥐약인 저에게 트리 DP는 무리였습니다.

3솔로 대회를 마치고 4시간 동안 참았던 담배부터… 항상 담배 끊고 건강하게 오래오래 살고 싶지만, 끊기 정말 어려운 것 같습니다. 가뜩이나 PS 대회에선 같이 담배 태울 사람도 없어서 참 고역입니다.

최종 57위로 마무리 했습니다. 아쉬운 성적이지만, 재밌으니 됐습니다.

대회가 끝나고 난 뒤

동아리 부원들이랑 모여서 풀이를 들었습니다. 운영진분들 다들 숨참고 풀이 설명하시느라 고생 많이 하셨습니다…ㅜㅜ 이때 AlKon 최고 아웃펏 riroan님을 뵈어서 싸인 받았습니다. 올해 3/29에 개최했던 건국대학교 Hello, AlKon! 2025때 현장 스태프로 도와주셨는데, 이후 오랜만에 뵈었습니다. 이후 기다리고 기다리던 ohwphil님을 드디어 뵈어서 싸인을 받았습니다. :blobaww: 뿐만 아니라 대회 망친 기념으로 :blobsad:도 덤으로 그려주셨습니다. 이후 SCSC 뒷풀이에 같이 참석했습니다.

우리는 밤이 되면 빛난다

건국대 AlKon과 지금은 사라진 세종대 SAL은 원래 친했기에 합석했습니다. AlKon의 존망에 대해 열띤 토론을 즐기다가 SCSC의 ksi4495님도 합석하셔서 대회 이런저런 얘기를 나누다가 ohwphil님도 합석하시고, 옆에 서서 회전 의자로 디제잉을 하시던 cywohoy님도 만나서 싸인 받았습니다.

이후 유독 저희 테이블이 소주가 많이 돌기 시작하면서 핫플이 되었습니다. ksi4495님도 무섭게 잘 드셨습니다. 이후 갑자기 SCSC의 pleiades1님이 맥주잔에 소주를 가득 따른 뒤 원샷을 하시길래, 제가 AlKon 대표로 소주 0.8병을 원샷해서 응수했습니다. 이 분 집가서 코포 치신다고 하셨는데 집은 잘 들어가셨으려나요. 아무튼 주변 분들이 경악을 하셨습니다… 그러고 나서 대충 pizzaroot님이랑 몇몇 분들 춤추고 제대로 술판을 즐기다가 막차 시간이 되어 먼저 나왔습니다. 그때 술을 워낙 많이 마셔서 텐션이 많이 높았던 것 같은데, 민폐 끼쳤다면 정말 죄송합니다…

집에 와서 수집한 싸인을 다시 보니 정말 많네요.

이 싸인들은 아무 이유 없이 받은 것이 아닙니다.
정말 한 분 한 분께 존경심을 가지고, 용기 내어 부탁드린 싸인들이었습니다. 저는 PS에 특별한 재능이 있는 것도 아니고, 특별히 많은 노력도 하지 않은, 평범한 유저입니다. 그렇기에 PS를 잘 하시는 분들을 보면 되게 부럽기도 하고, 배울 점이 참 많다는 것을 느낍니다. 대회는 잘 치지 못했지만 올해도 재밌는 경험이었습니다. 좋은 대회 준비하시느라 고생하신 SCSC에 감사함을 표합니다.