ICPC Regional도 어느새 일주일이 지나고 제 첫 개인 프로그래밍 대회에 나가게 되었습니다.
엄청난 구현 삽질로 7솔 날려먹은 게 아직도 아쉬운데 이번에는 제발 안 그랬으면 합니다.
그런 걸 잡아줄 팀원이 없어서 걱정되긴 하지만, 그래도 그나마? 이번에 저한테 유리한 점은 난이도 순으로 문제가 나옴을 알고 있어서, 문제 푸는 순서는 확실히 잡힐 것 같습니다. 그리고 세트가 5시간이 아닌 3시간이라 스피드상으로는 유리할 것이라 생각했습니다.
팀노트는 어차피 인터넷 검색 가능하다 해서 ICPC 때 쓴 코드 몇 개 대충 복붙해놓은 거 썼습니다. 옷은 올해 Regional 때 받은 파란 셔츠를 입고 왔는데, 대회 진행자 conu님이 그에 맞춰서 작년 Regional 옷을 입게 되었습니다. 작년 네온 오렌지 색이 정말 파격적입니다.
이름은 제 지메 닉네임을 따라서 CheckSteam이라 했습니다. 솔직히 왜 그랬는지는 모르겠습니다 할 이름이 그렇게 없었나 읍읍
* 약간의 문제 스포일러가 들어갔습니다.
0:00
시작하자마자 A는 바로 답이 나온 것 같아서 1분이 지나기 전에 제출....을 했는데 틀렸습니다. 사실 저는 A 퍼솔 맞는다고 예제도 안 돌리고 바로 제출했는데 min이 아니라 max를 써버려서 틀렸습니다... 그렇게 처음부터 어이없게 20분 추가로 먹고 시작했어요 :blobsad: (1 Solve, 21)
0:01
다행히 그 이후 B는 실수 없이 빨리 풀었습니다. 여담으로 B 특별상 이름이 연세를 사랑하는 상인가 그랬는데 B 막솔한테주는 거였습니다. 근데 저는 또 input에 상관없이 Yonsei Win 하면 주는 건줄... 아무튼 연대 최고 ^^ (2 Solve, 23)
0:03
자 여기서부터 대환장파티가 시작됩니다. C는 어떻게 하는지는 거의 바로 구했는데 그걸 또 구현하라니까 생각보다 경우가 많아서 종이에 끄적거리다가 0:09에 내고 예제부터 틀렸습니다. 그냥 검토를 할 생각이 없나 봅니다.
여튼 그러고 나서 더 깔끔하게 할 수 있는 방법을 구해서 (무지성으로 중점 이웃한 모든 점 시도하기), 구현을 했....더니 정말 멀쩡해보이는 코드에서 컴파일 에러가 떴습니다. 보니까 abs() 함수는 y1에 적용이 안 된다 이러던데 y1이 정수인데 그냥 abs 함수가 이상하게 반환하는 건가? 하고 (int)abs(y1)이라 적거나, 아예 abs 함수를 직접 만들어서 사용하는 등 온갖 짓을 다 했습니다. 그래도 컴파일 에러가 없어지지 않았습니다. 그래서 최후의 수단으로 y1, y2 변수명을 y11, y22로 바꿨는데 돌려졌습니다 (????) 진짜 도대체 왜??????? 싶었는데 나중에 뒷풀이에서 oh040411님이 말하시길, y1은 math.h에서 베셀 함수로 지정이 된 상태라 (....) 못 쓰는 거였습니다. 실제로 IDE에서 Function으로 이미 정의가 됐다 하던데 그걸 의미하는 거였습니다... 이런 걸 대회에서 처음 당할 줄은 생각도 못 했네요. 아무튼 컴파일이 되는 사실에 너무 기뻐해서 음수 좌표가 나올 수 있다는 사실을 잊어버린 채 제출해서 WA를 한 번 더 당하고, 27분이 지나서야 풀게 됐습니다... (3 Solve, 91)
0:27
이 때까지만 해도 순위가 대략 1n등 정도라 원래 생각하고 있었던 SUAPC 등수 (7위) 넘기기는 커녕, 상 범위 (10위) 안에 들어갈지조차 의문이였습니다. 그래도 마음을 다듬고 D를 풀었습니다. 이번 대회에 푼 거 중에서 구현 비중이 가장 커서 빨리 풀이를 발견했음에도 코드 작성에 거의 15분의 시간이 걸렸습니다. 그래도 다른 분들이 이 문제에 말려서 그런지 솔브 수 하나로 악으로 깡으로 등수가 상당히 올라가긴 했습니다. 물론 페널티가 A/C 때문에 많이 불안해서 계속 이 페이스로 나가야 합니다. (4 Solve, 132)
0:41
E는 기본적인 우큐 그리디 문제였습니다. B를 제외하면 가장 스무스하게 지나가서 딱히 할말이 없네요, 5분 안에 구현까지 끝냈습니다. (5 Solve, 178)
0:46
F는 보자마자 무지성으로 N(N+1)/2 아님? 이거 왜 F임? 하다가 틀렸습니다. 그래서 연결시켜야함을 깨닫고 N이 짝수일 때 1을 더해서 다시 제출하고 다시 틀렸습니다. 그 때 스코어보드에도 F에 WA 표시가 은근 많았는데도 이렇게 생각 없이 하는 걸 보면 한심합니다. 그래도 2번째 오답 직후에는 한붓그리기라는 점을 알아채고 바로 고쳐서 맞았습니다. 진작에 천천히 생각했으면 됐는데 왜 그랬나 싶네요. 그래도 솔브 간격은 이번에도 4분밖에 안 됐습니다. E/F를 빠르게 컷하며 등수가 어느새 3위까지 올라갔습니다 야호 (6 Solve, 268)
0:50
G만 Subtask가 있는 문제였습니다. 솔직히 Subtask 1 없었더라면 조금 더 고민했을 거 같은데 다행히 Subtask 1을 푼다면 Subtask 2는 구현실수가 없지 않는 가정하에 동시에 처리 가능한 구조였습니다. 루트질 배우는 기본 문제가 여기 나와서 좀 놀라긴 했습니다. 구현을 구데기 같이 해서인지 600ms 정도가 걸렸는데 Python에서도 그 정도 걸렸다 하면... 뭐지 (7 Solve, 330)
1:02
H는 애드혹입니다. 다만 대회가 끝나고 풀이를 찾는 최적화된 방법 (에디토리얼 참고)가 있다는 점은 생각 못 했습니다. 원래 중복을 허용해서 출제할 생각이 있었다는데 나중에 제거했답니다. 만약 중복 있었더라면 또 구현실수 nmk번 했을 듯... (8 Solve, 401)
1:11
I를 봤더니 해구성 문제라 생각해봤는데 지문에서 '이웃한 모든 원소가 다르다'를 '같은 숫자에 대해서, 이웃한 원소들의 위치는 서로와 모두 다르다'로 생각해서 "012012..." 아님 "021021..." 이런 거만 되는 줄 알고 제출했다가 (만약 저게 맞다면 N = 6만 해가 있습니다) 틀렸습니다. 그래서 지문을 다시 읽고 나니, 그냥 브루트포스를 해서 억지로 패턴을 찾기로 했습니다. 그러더니 6, 16 때 되는 패턴을 확장하니 N%10 == 6일 때 된다는 걸 찾았습니다. 나머지는 안 된다는 가정을 하고 제출하니 틀렸습니다 (2WA). 그래서 브루트포스를 다시 확인해보니 6 - 16까지를 다 했는데 무슨 일로 11을 건너뛰었다는 점을 알게 되었습니다. 그 당시 무슨 생각인지는 모르겠는데 '11만 예외인가 보다' 싶어서 제출했다가 또 틀렸습니다 (3WA) 이 정도면 그냥 틀리고 싶나 봅니다. 3번째 WA를 보고 나서야 정신을 차려서 패턴을 어찌저찌 확장시키고 제출하여 맞았습니다. 나머지 수가 안 된다는 증명은 그냥 건너뛰긴 했는데 그런 걸 하다간 제 뇌가 못 견딜 거 같아서 넘어갔습니다. (9 Solve, 567)
1:46
그 이후로 J를 풀려다가 괄호로 트리 만들어보기, 괴상한 점화식 만들어보기를 해보려 했으나 실패했습니다. 컴퓨터 배경화면에 blobthinking 이모지 같은 걸 달아놓으면서 생각을 해보려 했지만 실패했습니다. 결국 프리즈 이후, L번에 Text로 conu님에게 세트가 생각보다 너무 어렵다고 호소했습니다. 그 결과 스코어보드 공개 과정에서 박제당했습니다 🎉 J는 계속 뻘짓을 하다가 생각 없이 간단한 식 하나 정도 제출하고 거뜬히 틀렸습니다. 그렇게 타임오버
최종 9 Solve, 567분 페널티로 프리즈 전에 4위였으나, 프리즈 도중 H - J를 시도한 분이 많이 보여서 조마조마하다가, 정말 아슬아슬하게 6위로 마무리 지었습니다. A, C, I에서 한 뻘짓을 감안하면 같은 9솔을 한 분들 5명 중 2등은 어떻게 한 건지가 의문입니다.
아무튼 3등상 (1+2+3위까지 3등상이랍니다)은 타긴 했는데 ICPC 본선 팀들인 SEVERANCE나 Kpop Ssal Hunters 인원 대부분한테 서열정리당한 건 좀 아쉽긴 합니다. 케쌀헌은 25학번임에도 경곽 버프인지 너무 강한 것 같습니다. 그리고 세브란스에서는 특히 dong5995님이 프리즈 전에 10위 정도였다가 1시간 동안 3문제를 푸는 (그리고 L을 순수 무작위화로 풀려고 한 노력)을 한 것을 보고 나서 아직 그 정도 실력까지 가기에는 좀 남았다는 생각이 들었습니다. 그리고 lindelof님은 시작하고 한 3분부터 대회 끝까지 혼자서 선두에 있는 걸 보고 이 분이 연대의 PS를 책임줄거라는 믿음이 생겼습니다. 정말 갓입니다. J는 조합 배울 때 직사각형에서 한 점에서 다른 점으로 가는 문제와 거의 비슷한 문제인 걸 듣고 좀 허무하긴 했습니다 으악
우리 ICPC 팀원은 additionalpass05님이 꽤 안정하게 하면서 (그리고 L에 hello world를 제출하면서) 9위로, a_cedia님이 D를 건너뛰고 ABCGEIF 순서대로(...?) 풀면서 11위를 기록하게 됐습니다. H도 풀이는 구했다는데 하필 끝나기 2분 전이라 아쉬운 거죠
여튼 YCPC를 끝으로 참가하려고 한 주요 대회는 다 끝난 것 같습니다. 뭐 나중에 기회가 생긴다면 더 참가할 수 있겠지만, 입대도 해야하고 그래서 앞으로 PS는 대애충 취미로 슬쩍슬쩍 하면서 백준도 Ruby V 찍고 콜포테도 해보고 해야되겠습니다 ㅎㅎ
'PS' 카테고리의 다른 글
| SUAPC 2026 Winter 참가 후기 (0) | 2026.02.21 |
|---|---|
| 1/17 CP (KCPC 2025 + Codeforces 1073) 후기 (1) | 2026.01.19 |
| Connected Profile DP - 싼 비용 (BOJ 1144) (0) | 2025.11.29 |
| 2025 ICPC Seoul?????? Regional 후기 (2) | 2025.11.23 |
| [BOJ] 백준 15493 - 수 고르기 (1) | 2025.10.26 |