UCPC 2026 본선
어쩌다 보니 바쁜 일이 이것저것 생겼어서 이제야 올립니다.
2026년 7월 12일에 UCPC 2026 본선에 참가했습니다. 팀명은 쉬었음 청년, 팀원은 쉬었음 의대생 lindelof, 쉬었음 군인 jk410, 쉬었음 선제 gs22059입니다. 결과는 8+983/14=#11/60입니다.
본선 대비
같은 건 없었습니다.
팀원 중 한 명이 군인이라서 팀연습을 할 수 있는 상황이 아니었고, 그냥 개인적으로 UCPC 기출이나 다른 셋을 도는 것으로 연습을 적당히 대체했습니다. 그런 건 대회 직전이 아니어도 매번 하는 것이므로, 본선 대비 같은 건 진짜로 안 했습니다. 네.
전날
10일에 SCPC를 이미 끝낸 상태였고 (이전 포스트를 참고), 11일에 천천히 대전으로 내려가면 되었습니다. 고속버스를 통해 유성터미널으로 내려가서 특구 버스를 타고 저녁 5시 반 정도에 카이스트에 도착했습니다.
전준우 팀의 방에 가서 야부리를 털다 보니 팀명 정하다 A번 못 풀듯 팀의 두 명이 도착해 있었고, 방이 너무 더럽다고 주장하길래 가봤는데 진짜로 곰팡이가 천장과 벽에 초록색으로 피어 있고 바닥에 바퀴벌레 사체가 있어서 놀랐습니다. 둘은 방을 바꿔달라고 운영진에게 주장했던 것 같고, 그 여파로 운영진 johnny8337님이 저희 방에서 자기로 했습니다. 외에 다른 참가자 중에도 합방을 해야 했다는 사람이 있는 것 같습니다.
저녁은 팀명 정하다 A번 못 풀듯의 두 명과 대회 참가자가 아닌 jhk_8349와 어은동에 가서 먹었습니다. 이후 기숙사로 돌아가는 길에 운영진인 pauljjang410을 만났습니다. 기숙사로 돌아와서는 일단 방에 들어갔는데, 팀명 정하다 A번 못 풀듯의 두 명이 옆방에 dadas08이 있다고 주장했습니다. 그래서 가보려는데 1층 로비에서 라면을 먹으러 가던 dadas08을 만났습니다. 내가 너희 방에 침투하겠노라 선언했더니 dadas08이 제가 모르는 사람과 방을 쓰고 있다고 했는데, 가보니 제가 모르는 사람에 해당하는 사람이 pauljjang410이어서 그 방에서도 야부리를 털었습니다.
이후에는 씻고 사람 구경을 조금 더 하다가 일찍 잤습니다. 디스코드를 보니까 누가 벨튀를 하네 침투를 하네 그러던데, 저는 룸메 두 명 중 한 명은 평시 취침시간이 이른 군인, 다른 한 명은 내일 7시 30분까지 대회장에 가야 하는 스태프였어서 저도 같이 일찍 자기로 했습니다.
당일
잘 자지는 못했지만 적당히 6시간 이상의 수면을 취하고 일어났습니다. (특히 퀴즈노스가 오전 8시에 열리므로) 아침을 먹을까 생각도 해봤는데, 대회장에 가서 부스를 돌면 빵을 준다는 것 같아서 + 쉬었음 의대생님도 일찍 오신다는 것 같아서 그냥 이것으로 아침을 해결하기로 했습니다.
거의 9시에 딱 맞춰서 회장으로 갔고, 9시가 좀 넘어서 등록이 시작되었던 것 같은데 거의 첫 번째로 등록했습니다. 이후 부스를 시타델-HRT-제인 순으로 돌고 빵을 뽑아서, 어떠한 나선 모양의 무언가가 있는 빵을 받았습니다.
- 시타델은 국내 PS 대회 후원에서는 본 적이 없는 것 같은데, 물어보니 PS하는 사람들을 좋아하긴 한다고 합니다.
- 제인에 가서 나는코더다 반년대회에 대한 이야기를 하니 지금도 스폰서십이 잘 돌아가고 있다고 하셨고, 1회 대회의 컨택을 제가 상당부분 담당했다는 이야기를 하니 반가워하셨습니다.
빵을 먹은 뒤 옷을 갈아입고 dadas08이 찍어주는 스냅사진 부스에 가서 팀 사진을 부탁했는데, 사진을 아주 뭐시기하게 찍어줘서 누가 누군지 알아볼 수 없게 되었습니다. 이후 dadas08이랑 놀기 위해 부스에 한 번 더 갔었는데, dadas08이 화장실에 가야겠다며 자기 부스를 제게 맡기고 튀었습니다. 몇 분 서있다가 저도 대충 유기했습니다.
외에는 많은 사람을 만났습니다. 작년의 LG 회장보다 확실히 로비(로 근사할 수 있는 공간)가 넓고 부스가 크게 거리를 두고 설치된 것이 마음에 들었고, 그래서 사람 만나기를 더 쾌적하게 할 수 있었습니다.
1시간 전인 10시에 회장이 열렸던 것 같습니다. 자리에 짐을 유기하고 노트북을 대충 세팅해둔 뒤 사람을 구경하러 조금 더 다녔습니다.
0:00~0:44; L, C, D
쉬었음 군인이 A..D,쉬었음 의대생이 E..I, 제가 J..N을 잡고 시작하기로 했습니다. 머신은 제가 잡은 채로 시작했습니다.- 대회가 11시 10분 시작으로 연장되었지만 사실 연장되지 않았고, 일단 대회가 열리자마자 문제지를 열기 전에 빠르게 모든 문제의 지문을 열었습니다.
- N부터 반대 방향으로 문제를 하나씩 보는데 L번이 매우 쉬워 보여서 빠르게 구체화를 시작했습니다. 이때쯤
쉬었음 군인이 분배해준 지문을 받았습니다. - 실제로 구체화가 빠르게 되었고 이것이 가장 쉬운 문제라고 확신하며 구현을 시작했습니다. (약 5분)
쉬었음 군인이 C 혹은 D의 풀이가 있다고 했습니다. 제가 이미 구현을 하고 있었기에 큐에 넣었습니다.- 구현이 찐빠가 난 건지 예제가 안 나오는데 왜 틀린 건지 모르겠어서, 초반을 빠르게 밀어야 된다는 생각으로
쉬었음 군인에게 머신을 넘기고 코드 프린트를 받았습니다. (약 10분)- 별로 좋은 선택은 아니었던 것 같습니다.
- 저는 자명하게 틀린 것을 찾았고 예제와 몇 가지 케이스를 뇌로 돌려봤는데 맞는 것 같아서 머신을 다시 가져오고자 했습니다.
쉬었음 군인은 구현이 오래 걸린다고 주장해서 머신을 바로 받아올 수 있었습니다. (약 15분)- 이건 그냥 블런더였던 것 같습니다.
- 제가 거의 바로 L을 제출했고 TLE를 받았습니다. (16분)
- 이것이 fastio 이슈라고 생각해 수정 후 제출했고 한 번 더 TLE를 받았습니다. (17분)
- 슬슬 저는 멘탈이 나가고 있었습니다. 머신을 다시 옮겼는지 제가 그대로 잡고 있었는지는 잘 모르겠습니다.
- 그냥 병신짓을 하고 있었다는 사실을 알게 되었고 + 그냥 코드를 엎고 빠르게 새로 짜는 것이 올바르겠다고 생각했습니다.
쉬었음 군인이 B, C, D의 풀이를 가지고 있다고 주장했습니다.- 저는 아무튼 다시 구현했고 맞았습니다. (25분)
- 시간을 너무 많이 버려서 하나는 멘탈이 나가고 있었고 하나는
쉬었음 군인에게 좀 미안했습니다. 약 30등 정도였습니다.
- 시간을 너무 많이 버려서 하나는 멘탈이 나가고 있었고 하나는
- 저는 아직 안 읽었던 J, K를 읽어보았고, 둘 중 한 문제를 잡았으나 어떤 문제였는지는 모르겠습니다. 어려운 문제라고 생각했던 것 같습니다.
쉬었음 의대생은 자기 구간의 문제 중 쉬운 문제가 없는 것 같다고 했습니다.쉬었음 군인이 C를 맞았습니다. (34분) D를 구현할 수 있는쉬었음 군인이 계속 머신을 잡고 있기로 했습니다.- 그러다 N의 퍼솔이 나왔고 (36분), N을 잡기로 했습니다.
- 어렵지 않게 모든 subarray에서 최적해를 얻을 수 있는 방법을 고안했고, 모든 subarray에서 합을 어떻게 빠르게 풀 수 있는지 고민해보기로 했습니다.
쉬었음 군인이 D를 맞았습니다. (44분)
0:44 ~ 2:16; B, M
- 구현할 문제가 더 없었고
쉬었음 군인이 B를 구체화하는 것이 빠를 거 같아서 머신을 계속쉬었음 군인이 잡았던 것으로 기억합니다. - 그런데 어떤 포인트에서
쉬었음 군인이 B를 풀 수 없다고 했습니다. 어느 시점인지는 잘 모르겠습니다. - 저는 N을 더 고민했고, 빠르게 계산하는 방법이 딱히 떠오르지 않았습니다. 모노톤 스택 같은 걸 아주 잘 쓰거나, 유파 같은 걸 아주 잘 쓰거나, 그냥 어떠한 자구비빔밥으로 잘 풀어야 하거나 세 가지 중 하나라고 생각했습니다.
- 이중 유파를 아주 잘 쓰는 풀이가 올바르다고 주장해서 머신을 가져왔지만, 구현하던 중간에 구멍이 있다는 사실을 깨달았습니다. 구현할 수 있는 문제가 없어서 일단 제가 머신을 잡고 있기로 했습니다.
쉬었음 의대생은 아직 풀 만한 문제가 없다고 했고, 저는 N번에서 지금까지 관찰한 것을 전달하면 적당히 해주실 것이라 생각해서 관찰을 넘겨봤습니다.- 얼마 안 가서
쉬었음 의대생이 저랑 비슷한 결론을 얻고 적당한 자료구조로 이것을 계산할 수 있을 것 같다고 주장했습니다. 아마 스코어보드에서 M이 풀리고 있었어서, 제가 M으로 도망을 가고쉬었음 의대생이 N을 좀 더 잡기로 했습니다.- 저는 제가 찾은 최적해와 off-by-1이라고 생각해서 반례를 찾으려고 고민했지만, 사실 off-by-1인 것처럼 보이는 레전드 착시현상이었고 실제 풀이는 같았습니다.
- 이 시간
쉬었음 군인은 B에서 끔찍한 시간을 보내고 있었던 것으로 기억합니다. - 어떤 포인트에서
쉬었음 의대생은 N의 구체화가 다 되지 않은 상황에서 지금까지의 관찰을 제게 넘겨야 한다고 주장했고, 저도 M번의 관찰이 잘 진행되고 있지 않았기에 진행도를 교환하고 제가 N을 다시 돌려받았습니다. - 실제로
쉬었음 의대생의 구체화는 제가 이전에 했던 관찰의 구멍을 적절히 채우고 있었습니다. 쉬었음 군인이 M을 제출했지만 틀렸습니다를 받았습니다. (85분)- 저는 N을 구현할 수 있다고 주장했고, 머신을 받아서 구현을 시작했습니다. 이전에 구현해둔 것이 있어서 구현을 완성하는 데는 시간이 얼마 걸리지 않았습니다.
- 저는 N을 제출했고 컴파일 에러를 받았습니다. (104분)
- int를 ll으로 바꾸는 과정에서 main도 ll으로 바꿨다는 사실을 관찰했고 다시 제출해서 맞았습니다. (104분) 저는 슬슬 솔브가 나오고 있었던 F를 잡기로 했습니다. 그새
쉬었음 의대생이 M을 해결했다고 주장해서, 아마 머신을 바로 넘겼던 것 같습니다. 쉬었음 의대생이 M에 제출했지만 틀렸습니다를 받았습니다. (120분) 코드를 프린트하고 머신을쉬었음 군인의 B로 넘겼습니다.쉬었음 군인이 B에 제출했지만 틀렸습니다를 받았습니다. (128분) 슬슬 무언가 잘못되었다고 느낀쉬었음 군인은 제게 B를 들고 와서 무엇이 틀린 건지 생각해보라고 해서, F를 잠시 버리고 B를 잡았습니다.- 그러다
쉬었음 군인이 다시 틀린 점을 알겠다고 주장해서 제게 B를 버리라고 주장했고, 다시 F를 보기로 했습니다. - 얼마 안 가서
쉬었음 군인이 B에 제출해 맞았습니다. (135분) 아마 H를 보러 간 것 같습니다. - 바로
쉬었음 의대생이 M을 고쳐서 맞았습니다. (136분) 아마 G나 K를 보러 간 것 같습니다.
2:16~3:52; K, F
- 저는 F를 A_i=2^i로 채우면 적어도 n(n+1)/2개의 약배수쌍을 만들 수 있다는 점에서 같은 수를 최대한 많이 채우는 느낌의 해를 찾아야 최적일 것이라 생각했습니다.
- 이 정도 시점에
쉬었음 의대생이 K번이 1솔밖에 안 나온 것이 말이 안 된다면서 풀이가 개쉽다고 주장했습니다. 저는 F가 근시일내에 풀릴 것이라 생각해서 계속 보기로 했고,쉬었음 군인이 그 주장을 듣기로 했습니다. 쉬었음 군인은 맞는 말 같다고 주장했고,쉬었음 의대생은 구현을 시작하기로 했습니다.- 저는 F에서 n(n+1)/2개의 쌍을 보장할 수 있도록 모든 A_i를 2^j꼴으로 채우는 것이 optimal할 것이라 생각했습니다.
- 다르게 말하면 등장하는 소인수를 2 한 개만 써도 된다는 것이고, 조금 더 자세히 얘기하면 (구간 조건을 만족하기 위해서는) 지수가 점점 커졌다가 점점 작아져야 한다는 뜻입니다. 다소 돌아가긴 했지만 구간 관계들이 laminar하다는 spirit은 올바랐던 것 같습니다.
- 그러나 그에 대한 근거도, 그것을 적절히 구할 수 있는 4제곱 이하의 DP도 얻지 못하고 있었습니다. (제한이라던가 이런저런 것으로부터 적당한 DP를 하는 것이 최적일 것이라 생각하긴 했습니다.)
- 저는 이것을 어느 시점에
쉬었음 군인에게 전달했습니다.- 이것보다 조금 더 초기의 아이디어를
쉬었음 의대생에게 주장했던 것 같은데, 그 시점이 언제인지는 잘 모르겠습니다.
- 이것보다 조금 더 초기의 아이디어를
쉬었음 의대생이 K를 제출해서 맞았습니다. (173분) 꽤나 희망적으로 잘 풀리고 있다고 생각했습니다.- 저는 더 이상의 진행을 못 할 것 같아서
쉬었음 군인에게 지금까지의 F번 관찰을 넘기고 버렸습니다. 아마 이때쯤부터 H를 잡았던 것 같습니다.쉬었음 군인이 몇 가지 관찰을 전달해줬습니다. a, b, c를 맨 앞에, abc를 맨 뒤에 배치하면 네 가지는 무시할 수 있다고 주장했고 맞는 말인 것 같았습니다.
- 이전에
쉬었음 의대생이 자신이 F를 잡으면 안 될 것 같다고 주장했는데, 어쩌다 보니 F를 잡은 것 같습니다.쉬었음 군인도 어느 순간 J를 잡기 시작했던 것 같은데, 그 시점은 확실하지 않습니다. - 저는 H를 악의적인 인터랙터가 순서를 적절히 조정하는 문제라고 생각하면 생각보다 많은 케이스에서 줄세우는 방법이 없다는 점을 관찰했습니다.
- 이때쯤
쉬었음 의대생이 F의 DP를 얻어냈다고 주장하며 머신을 가져갔던 것 같습니다. - 저는 H에서 ab, bc, ca 중 하나에 (각각) c, a, b를 매칭하고 나머지를 적당히 연결시켜줄 수 있다면 무조건 채점기가 이긴다는 것을 관찰했습니다.
- 저는 H에서 위의 경우가 사실이 아니라면 (abc의 존재를 무시했을 때) 무조건 적당히 줄세우는 방법을 구성할 수 있다는 사실을 관찰했습니다.
- abc의 존재를 붙여도 같은 조건문이 말이 되는 것 같아서 풀이를 얻었다고 주장했습니다.
쉬었음 의대생이 F에 제출해서 맞았습니다. (232분) 일단 머신이 제게로 왔고, 저는 H번의 위 내용을 구현했습니다.
3:52 ~ 5:00
- 저는 H에 제출해서 틀렸습니다를 받았습니다. (249분)
- 저는 H에 abc의 존재와 관련한 반례가 있음을 확인했고, 이것을 고칠 수도 있을 것 같은 조건문을 추가해 수정 제출했고 틀렸습니다를 받았습니다. (259분)
- 저는 H에 오류가 있음을 발견했고 수정했지만 틀렸습니다를 받았습니다. (263분)
쉬었음 의대생이 어떠한 문제 (아마 J번이었던 것 같지만 확실하지는 않습니다)를 잡고 있었기에쉬었음 군인에게 도움을 요청했습니다. - 저는 H에 반례가 있음을 발견했지만, 이것을 어떻게 수정할 수 있는지는 생각해내지 못했습니다. 이것을
쉬었음 군인에게 제대로 알려주지 않았던 것 같습니다. 쉬었음 의대생이 제 H 솔루션을 듣고 반례일 수도 있는 무언가를 제시했지만, 그 반례의 반례를 들고 있었어서 도움이 되지 못했습니다.- 저는 올바를 것 같지는 않지만 위에서 발견한 반례를 해결하는 3가지 방법을 작성해서 제출했고 모두 틀렸습니다를 받았습니다. (291분, 291분, 292분)
- 저는 H번의 앞선 반례에도 반례가 있음을 발견했고, 이것을 처음에 낸 솔루션(263분 틀렸습니다)이 제대로 확인하고 있지 않음을 확인했습니다. 이것을 해결하기 위해 263분에 292분의 케이스워크를 포함하는 솔루션을 작성해 제출했지만 틀렸습니다를 받았습니다. (296분)
- 저는 296분에 오류가 있음을 발견했고 수정해 제출했지만 틀렸습니다를 받았습니다. (298분 5초)
- 가망이 없다고 판단하고
쉬었음 군인이 APIO 매직 쇼의 정해 중 alice.cpp를 작성하기 시작했습니다. (298분 15초) 쉬었음 군인이 bob.cpp를 작성하기 시작했습니다. (299분 5초)- 대회가 종료되기까지 코드를 완성하지 못했습니다. (300분)
이후
301분 정도에 매번 그렇듯이 비명…이라고 하기에는 좀 이상한 묘한 소리가 들려왔습니다. 알고 보니 Journey to Daejeon의 365의 H에 대한 비명이었다는 것 같습니다.
프리즈 당시 10등이었고, 프리즈된 스코어보드를 보면서 순위가 떨어질 수 있는 경우의 수를 찾아보았고, 저희 아래에서 올라오기 위해서는 무조건 프리즈 이전 7솔브에서 이후 9솔브가 되어야 한다는 것을 관찰했습니다. alreadyallsolved가 그러한 팀임을 알고 있었고 나머지 팀 중에는 프리즈 중 두 문제를 더 풀었을 것 같은 팀이 안 보여서, 거의 확정적으로 11등을 할 것이라 생각했고 실제로 그렇게 되었습니다.
스코어보드가 풀렸고, 6솔컷이 36위, 7솔 24위, 8솔 12위, 9솔 8위였습니다. 마지막에 H를 풀지 못한 것이 더욱 아쉬웠습니다. 저희는 실제로 11등을 했고 5등상을 받았습니다. 상품은 독거미 키보드였는데, 작년 UCPC와 언젠지
시상 이후 간단하게 연세대학교 팟으로 사진을 찍고 Jane Street Game Night으로 이동했습니다. 자리가 약간 부족하기도 했고 저는 늦게 도착한 편이었어서, 쉬었음 군인과 운영진인 qwerasdfzxcl과 함께 모르는 세 분과 합석했습니다. 생각보다 본격적이었고 매우 퀄리티가 높은 저녁식사를 할 수 있었습니다. 물론 밥을 먹은 뒤에도 하라는 게임은 안 하고 전준우 팀이나 Leehends, 팀명 정하느라 A번 못 풀듯 팀, 3, joseph0528, 운영진 kim16 등의 인물들과 야부리를 털면서 놀았습니다.
카이스트로 돌아온 뒤에는 런방에 잠시 방문했습니다. 돌아오는 길이 더웠기에 한 번 씻어야 되기도 했고 그냥 기숙사로 돌아갔다가 적당히 늦은 시간에 다시 런방으로 가서 딥2를 치기로 했습니다. 그런데 샤워를 하고 침대에 누우니까 중력이 졸라짱쎄서 그냥 잘까 좀 고민했습니다. 어쨌든 동방에 가면 사람이 적당히 많이 있을 것 같아서 가보기로 했습니다. 실제로 동방에는 사람이 매우 많았고 아직 빽빽했습니다. 오래간만에 칠판 방명록에 이름을 적고 (24년에는 이름을 적었지만 25년엔 안 적은 것 같더라고요?) 옆에서 마이티가 돌아가는 것을 구경하며 적당히 코포를 칠 준비를 했습니다.
저는 언레이기도 했고 자리가 좁아 코딩을 최대한 안 하고 싶었기 때문에 F번부터 보기로 했습니다. F번은 수열과 수열 같은 느낌의, 일반적인 무언가를 만들 수 있는 construction을 요구하는 류의 문제였습니다. 앞에 앉아있던 iccodly랑 같이 한 시간 조금 넘게 고민했는데 적당한 발상이 안 나와서 결국 못 풀었습니다. (수열과 수열-induced 철학 몇 가지를 사용하는 것을 시도해보았지만 딱히 무언가가 되지는 않았습니다.)
이후에는 그냥 적당히 mon_de vs kim16 테트리스 대전을 보다가 졸려서 방으로 돌아가 잤습니다.
세미나 날
점심만 먹을 생각으로 늦게 일어나서 천천히 방에서 나왔습니다. 쉬었음 군인은 세미나를 안 듣는다고 먼저 떠났습니다. 딥식이가 밥을 먹자고 저와 Leehends를 불러냈고, 나가기 귀찮으므로 대충 퀴즈노스에 가기로 했습니다. 가는 길에 pauljjang410과 queued_q님을 만났고 여기도 딱히 밥 먹을 곳이 없다고 해서 같이 가기로 했습니다. queued_q님은 아레나 파티 이후로 (가끔 SNS로 이것저것 올리시는 것을 구경해보기도 했고) 레전드 퍼즐맨으로 알고 있었는데, 이번에도 몇 가지 퍼즐을 들고 오셨고 점심을 먹으면서 이것저것 해볼 수 있었습니다.
세미나로 이동했고, 연세대 25 친구들을 위주로 같이 앉았습니다.
첫 세션에서는 제인 엔지니어 분이 오셔서 SWE적인 이야기를 해주셨습니다. PS 이외의 무언가를 아무것도 모르기 때문에 완전히 이해한 것 같지는 않지만, 꽤나 흥미로운 이야기를 하셔서 재미있게 듣긴 했습니다. PS를 하면 보통 온라인으로 많은 양의 데이터가 유동적으로 들어오는 상황을 대규모로 처리하면서 적당히 분산계산해야 돠는 상황에 도달하지는 않는데, (아마 그런 상황에 온다면 다른 문제로 도망치겠지요,) 아무래도 퀀트를 하면 트레이더(다 봇이지 뭐)가 쏟는 데이터를 적당히 주물럭주물럭하는 파이프라인이 필요하다는 것 같습니다. 아무튼 그래서 제인에서 대략 그런 문제를 어떤 식으로 해결하고 있는지를 알 수 있었습니다. 개인적으로는 다음에는 퀀트적인 이야기도 들어보면 재미있을 것 같은데, 아마 내년 세미나가 열릴 때쯤 저는 입대를 한 상태가 아닐까 싶네요.
다음으로는 소서릭스 CEO로 계신 xhae님이 빅테크와 스타트업에서 일하는 것에 대한 이야기를 해주셨습니다. 뭐랄까 어떻게 표현하는 게 좋을지 잘 모르겠는데, 이것저것 시도해보고 자신에게 제일 잘 맞는 무언가를 찾는 데 나름 장기적으로 성공하신 분인 것 같아서 멋지다 내지는 부럽다고 생각했습니다. 그리고 그 과정에서 얻어내신 관찰이 실제로 다른 사람들이 (특히 제가) 취업을 하게 된다면 거기에 유의미한 도움을 줄 만한 내용이었어서 좋았습니다.
다음으로는 ntopia님이 PS의 가치(?)에 대한 이야기를 해주셨습니다. 글쎄요, 그냥 재미있으면 그만이라고 생각하면서도 그러면 PS하고 있는 게 그냥 게임좋아함청년이랑 차이가 없는 건가 싶어서, 어쨌든 PS가 가지는 어떠한 가치들은 없어지지 않았으면 좋겠다고 생각합니다. 실제로 그런 느낌의 이야기를 해주시긴 했는데, 그럼 (물론 좀 뒤틀리게 받아먹은 느낌이지만) AI가 싸지른 것에 책임을 질 수 있는 것 말고 우리가 할 수 있는 것이 무엇이 있나 싶은 생각이 조금 들긴 했습니다.
다음은 카이스트 교수를 하시다가 지금은 퓨리오사에서 가속기를 하고 계시는 연사님의 세션을 들었습니다. 아직 가속기가 뭔지도 잘 모르겠어서 잘 이해하지는 못했던 것 같습니다…
다음은 쿼라 SWE로 계신 jhnah님의 취업 이야기를 들었습니다. 사실 결론적으로 블로그를 읽으면 세션에서 나온 대부분의 이야기를 이해할 수 있는 것 같습니다만, 어쨌든 PS를 엄청 잘 하시는(셨던) 분들은 어떻게든 좋은 자리에서 일을 하고 계시는 것을 보면 아직 취업 시장에서 PS 최상위권 인재에 대한 취급은 나쁘지 않은가 싶었습니다. (물론 이분들은 뭘 해도 잘하실 것 같아서 PS 인재라고 특정하기에도 죄송한 것 같긴 합니다만…)
마지막에 전대프연에서 짧게 리크루팅을 했습니다. 전대프연이 오래갔으면 좋겠지만 저는 일단 입대를 하겠습니다. 감사합니다.
이후에 적당히 어은동에서 단체로 밥을 먹고 성심당에서 빵을 산 뒤 집으로 올라왔습니다. 올라오는 길에 본 글의 작성을 시작했습니다.
리뷰
어쩌다 보니 매번 UCPC는 다른 대회에서는 절대 안 할 것 같은 팀으로 매번 구성해서 나가고 있습니다. 세상에 나쁜 언어는 없다에 이어 올해의 팀도 다른 학교 조합에 ICPC 팀과는 거리가 먼 팀으로 출전했습니다. (쉬었음 군인은 자명하게 올해 ICPC에 출전할 수 없고, 쉬었음 의대생님도 아마 올해에는 출전하지 않을 생각이라시는 것 같습니다.)
작년의 팀에 비하면 실력이 많이 균형잡힌 팀이라고 생각합니다. 물론 결과적으로 본선은 쉬었음 의대생의 캐리로 먹여살려진 대회인 것 같긴 하네요. 저는 L에서도 말리고 H도 결국 못 풀었기 때문에 제 퍼포를 내지 못한 것 같아 죄송한 느낌입니다. (특히 후반부에,) 풀이를 빨리 만들고 리던던시를 보장하기 위해 한 문제에 두 명이 붙는 상황이 좀 더 있었어야 했다는 생각이 있고, 마지막에 커뮤니케이션을 충분히 하지 못한 것이 H를 해결하지 못하는 데 유의미한 영향을 주었다는 생각이라 아쉽습니다.
까지가 팀 운영에 대한 이야기고, 개인적으로는, 풀이를 충분히 구체화하지 않은 상태에서 성급하게 머신을 잡는 것을 적어도 팀 대회에서는 확실히 줄여야겠다고 생각했습니다. 사실 개인 대회에서도 풀이를 완벽히 구체화하는 연습을 하는 것이 큰 도움이 될 것이라고 생각하고 있습니다. 성급하게 머신을 잡게 되는 습관은 아마 코포를 많이 돈 것에서 오지 않았을까 싶은데, 그쪽은 보통 핵심 아이디어만 뱉으면 빠르게 구현을 잡는 것이 퍼포에 도움이 되는 반면 2~3시간보다 호흡이 길고 어려운 문제를 풀어내야 하는 환경에서는 생각한 것보다 엄청 큰 역효과를 내고 있는 것 같습니다.
그럼에도 개인 역량은 작년에 비해서는 훨씬 좋았다고 생각하고, 실제로 이것저것 조금씩 어시한 것도 있었고 특히 개인적으로 버리는 시간이 작년 대회에 비해 더 적었기에 (~= 많은 시간을 어려운 문제인 H에 긴 시간을 박았고, 실제로 H가 요구하는 대부분의 중요한 관찰에 성공했기에) 결론적으로 상당한 시간을 버렸던 작년에 비해 개인적인 퍼포먼스에 대해서는 만족하고 있습니다.
팀 퍼포먼스에 대해서도 적어도 평타는 했다고 생각합니다. 작년에 9위로 4등상을 받아갔던 세상에 나쁜 언어는 없다와 비교했을 때, 세 팀원의 최댓값은 낮아졌지만 평균은 올라갔다는 생각입니다. UCPC는 보통 수상을 위해서는 어려운 문제를 푸는 것이 중요하기 때문에 (어려운 문제를 뚫어줄 수 있는 IGM이 있었던 작년에 비해) 최종 퍼포먼스는 조금 더 낮을 것이라 예상했고 그래서 목표를 4등상으로, 기댓값을 5등상으로 생각했고, 5등상 중 탑을 했으므로 퍼포는 썩 괜찮았다고 생각합니다.
그 외에는, 쉬었음 군인이 경험이 매우 많고 쉬었음 의대생은 그냥 어려운 문제를 잘 풀어내서, 예/본선을 친 뒤의 팀에 대한 감상은 저점이 잘 보장되고 고점이 꽤나 높은 팀이라는 느낌입니다. 외에도 그냥 대회를 치기에 많이 편하고 좋았습니다.
슥보 구경
- 예선과 마찬가지로
Just Use CRT가 우승을 차지했습니다. 2등은oldtrend가 가져갔습니다. 두 팀 모두 그냥 역사적으로 잘 했던 팀들이라서 적당히 예상했던 대로 나온 것 같습니다. - 3위
Avg04는 올해 서울대의 1군에 약간의 수정을 거친 팀인데, 위 두 팀에 버금가는 퍼포를 내서 개잘한다고 생각했습니다. - 7위
Journey to Daejeon은 저희와 달리 1초를 남기고 H의 풀이에 성공했다고 합니다. 부러웠습니다. - 8위
alreadyallsolved는 프리즈 이후 7솔이었는데, 언프리즈 후 저희 아래에서 위로 올라갈 수 있는 사실상 유일한 팀이었고 실제로 그럴만한 팀이라 올라갈 것을 예상하고 있었습니다. - 9위
1 MiB는 카이에서 온 팀이고 올해 ICPC를 이 팀으로 나온다면 2군이나 3군이 될 것 같습니다. 예선에 비해 훨씬 좋은 성적을 내기도 했고 특히 패널티 관리를 정말 잘 해서 놀랐습니다. - 저희는 11위입니다.
- 13위
팀명 정하느라 A번 못 풀듯은 연세대 팀이고 그냥 잘 할 것이라고 예상했던 팀입니다. 예선에서도 강한 퍼포먼스를 보여줬는데 본선에서도 패널티 관리를 아주 잘 하면서 7솔 1등으로 순위상을 타가서 예상했던 것보다도 정말 잘 했다고 생각합니다. - 14위
트게쿼는 예선 때처럼 패널티 관리를 잘 하긴 했는데 마지막에 잘못된 문제 (는 G를 의미합니다) 에 매몰되어 15틀을 한 것이 아쉽습니다. - 15위
대전역 대 전역은 예선에서 엄청 강한 퍼포를 보인 군인팀인데 본선에서는 G와 J에서 쌍으로 폭사하신 것 같아 아쉽습니다. 그러나 어쨌든 순위상 막차를 타가셨으니 좋은 게 좋은 것 아닐까요? - 16위
ALPHANO는 예선 때 말린 것(으로 보인 것)에 비해 좋은 퍼포를 냈지만 결국 무상 1등을 한 것이 매우 아쉬운 팀입니다. 작년엔 4등상권에 쟁쟁한 팀이 많았는데 이번에는 순위상 컷 주변에 쟁쟁한 팀이 아주 많이 있는 것 같습니다. - 26위
전준우는 6솔 중 2위인 것을 보면 7번째 문제를 위해 고생을 많이 했을 것 같은데 아쉽습니다. 다만 (본인들 피셜) 요즘 PS를 열심히 안 하고 있다는 것 같아서 좀 열심히 하면 좋겠네요.
앞으로
남은 방학 기간동안에는 SCPC 2차 예선과 (희망적으로) 본선, 코드트리 본선 정도의 대회에 더 참가하고, 외에 신촌연합에서 SUAPC / Algorithm Camp 2026 Summer를 운영하며, 국제정올 여름학교 코치로 일을 좀 하고, 해병캠프(조합론 알고리즘 여름학교)에서 수업을 좀 들을 예정입니다. 그냥 방학이 전체적으로 바빠서 팀연습이나 개인 버추얼은 지난 여름만큼은 못 할 것 같고, 그래서 올해의 Road to ICPC는 작년과 마찬가지로 9월부터 올리게 되지 않을까 싶습니다.
작년 이맘때에 정말 연습을 엄청 했던 것 같은데, 당장 퍼포먼스가 나오지는 않았지만 지금 되돌아보면 1년 전에 비해서는 확실히 실력의 상승이 있었던 것 같습니다. 앞으로도 이렇게 정진합시다.