-
2024 SUAPC summer 후기2024 대회일지 2024. 9. 2. 01:12
Here comes a new challenger!
올해 새로 결성한 Team PS:Endgame입니다. (playsworld16, plast, ystaeyoon113)
작년에 티격태격하던 연세대 SCC_SinChonCoders와 Cookie팀이 조금씩 섞여서 만들어졌고 목표는 2025 ICPC Asia Championship 메달을 따고 월파에 진출하는 것입니다. 다들 올해를 마지막으로 생각하는 만큼 좋은 결과가 있었으면 좋겠습니다.
팀의 장점은 일단 여태까지의 연대 팀 중에 레이팅이 가장 높다는 점, 팀연습을 많이 하지 않았는데도 이미 소통이 굉장히 원활하다는 점, 그리고 교집합이 꽤 많다는 것입니다. 이게 장점일지 단점일지는 잘 모르겠지만, 작년부터 Team SCC와 Team Cookie가 매일 순위가 붙어있었고 푼 문제도 같았었는데 이게 두 팀이 연습을 자주 같이해서 그런지 푸는 문제들이나 우선순위로 두는 문제들이 엄청 비슷했었던 것 같습니다. 또 playsworld16과 plast가 붙어서 애드혹이나 게임 or 그리디 등을 논의할 때 둘의 시너지가 매우 좋은 것 같습니다.
단점이라면 기하나 생소한 자료구조나 익숙하지 않은 topic에는 약점이 있는 것 같습니다. 팀의 policy가 그런 문제 버리고 다른거 풀면 된다는 마인드인데, 사실 요즘 대회 기조가 그런 것들에서 조금 멀어져 가는 것 같기도 하지만 저는 내용정도는 알아두는게 나쁘지 않다는 생각입니다. 그리고 교집합이 많이 겹치는 만큼 합집합이 다른 ICPC 팀들에 비해서는 특색이 적은 것 같습니다. 극단적인 경우지만 어떤 팀에는 수학올림피아드 출신들이 수학만 주구장창 맡는다던지, 혹은 누군가가 엄청난 DB를 바탕으로 웰논을 모조리 맡는다던지, 누군가는 기하만 한다던지 다양한 팀들이 있는데 저희팀은 그런 특별함은 없습니다. 아직 팀연습을 엄청 많이 해보지는 않아서 약점이 계속 노출되는 쪽으로 팀연습을 해볼 생각입니다.
playsworld16은 작년부터 꾸준히 같은 팀으로 해왔고, 개인적으로 많이 신뢰하는 편입니다. 작년부터 그냥 말리면 playsworld16한테 해줘 한적도 많았고 헷갈리는 게 있으면 보통 물어보는 편입니다. 또 다른 사람 코드 오류도 잘 봐줘서 가끔 말릴때 한번 봐달라고 요청할 때도 있습니다. 올해 UCPC에서도 말릴때 꾸준히 문제를 밀어줬고 대회때 되면 든든한 국밥형 느낌입니다.
plast는 올해 함께하게 됐는데, 작년에 치고받던 Cookie팀에서 핵심을 맡고 있었습니다. 작년에는 사실 잘 몰랐는데 올해 팀원이 돼서 느낀점은 수학 베이스가 생각보다 많이 깊고, KOI 출신이라서 그런지 구현에 굉장히 능합니다. 제가 아이디어 내고 하..어캐구현하냐 하고 고민하고 있을때 그냥 가져가서 구현하는 경우도 있고 아니면 적당히 떠오른 생각을 전달해 주면 코드로 뚝딱 구현해주는 경우도 많습니다. Casework나 추론에 매우 강한데, 그래서 playsworld16과 시너지가 굉장히 좋습니다. playsworld16이 코너케이스 찾는거나 claim에서 잘못된 거 짚는 것도 매우 잘해서, 둘이 머리쓰는 문제에 붙여놓으면 plast는 약간 공격적으로 의견을 내고 playsworld16은 약간 보수적으로 점검하는 느낌? 그래서 둘의 시너지가 굉장히 좋습니다. 작년 베트남에서 끝나고 공항에서 둘이 무슨 Baba is you라는 퍼즐같은 게임을 하는데 저는 첨들어본 씹덕겜이였는데 둘이 알고보니 고인물이였다고.. 암튼 둘이서 쿵짝이 꽤 잘 맞는다고 느꼈고 PS에서도 비슷한 것 같습니다.
저는 연장자를 맡고 있고 팀원 두명이 레드를 모두 찍어버리는 바람에 레이팅으로는 막내를 맡고 있습니다. 작년에 비해서 요즘 풀이를 내는 능력이 좀 좋아지고 있는 것 같은데 팀원들이 구현을 잘해서 그냥 아이디어 내는 쪽으로 가버리는게 낫나 고민중입니다. 별개로 plast 가 잘 모르는 신기한 topic들의 DB를 playsworld16과 함께 보완하고 있습니다.
이번 SUAPC는 Team PS:Endgame의 데뷔전이였고 결과는 1위입니다.
처음 신청할때는 너무 자신감이 있어서 이거뭐 프리즈 이후에 제출을 시작해야 하나 여유부릴 궁리를 하다가 서강대에서 신청하는 팀들을 보고 빡겜안하면 무조건 진다고 생각해서 빡겜했습니다.
누가 딱히 캐리했다고 할 것 없이 그냥 각자 1인분씩 했던 것 같고, 중간중간 의견을 교환하면서 필요할 때마다 조금씩 도와주는 형태로 대회를 진행했습니다. 각자 1인분씩 잘 민 덕분에 페널티 관리가 굉장히 좋았고, 마지막에 F번에서 페널티를 엄청 갈아가면서 제출해도 1위를 유지할 수 있었습니다.
저는 F,G,I,J를 풀었고, 문제를 모두 다루지는 않겠습니다.
개인적으로 뿌듯했던 점은 J번의 bitset 풀이를 일찍 떠올려서 스코어보드에 혼동을 줬을 수도 있다는점 ? 이라고 생각합니다. 아마 풀고 나서 옆에있던 plast한테 J번에서 시간을 많이 벌었다고 얘기했던 기억이 있습니다.
J번은 bitset을 떠올리면 딸깍일수 있는 문제고, bitset을 모르거나 혹은 떠올리지 못해서 suffix array나 다른 문자열 알고리즘쪽으로 생각하는 순간 난이도가 Hell로 가버리는 문제입니다. 운좋게 일찍 발견해서 bitset을 딸깍였고 꽤 이른 시간이였기 때문에 다른 팀들이 한번쯤 J를 열어보다가 개어려운데??? 이게 왤캐 빨리풀렸지? 하고 당황했을 수도 있다고 생각했습니다. 그러나 상위권 팀들에게는 크게 작용하지는 않았으리라고 생각합니다.
F번의 풀이를 프리즈 이전에 꽤 일찍 떠올렸으나 저의 여러가지 삽질로 디버깅이 굉장히 오래 걸렸고, H번을 보던 playsworld16과 plast가 이건 못푸는 문제니까 그냥 F번에 셋다 디버깅을 하자는 의견이 나와서 셋이서 열심히 디버깅을 했습니다. 처음에 제가 그래프 모델링에 실수한 부분도 있었고 예제도 나와서 제출했는데 런타임 에러를 받았습니다.
아무리 찾아봐도 음수 인덱스나 배열 사이즈를 넘어가는 부분은 없었고 급기야 mcmf를 의심하기 시작했고.. 이건 무한루프가 돌아서 stack overflow가 나는거다... 음수 사이클이 있으면 뭐 어쩌고 저쩌고... inque 추가하고.. 뭐 등등 오랜 뻘짓을 반복하다가 playsworld16이 코드를 살펴보다가 이거 입력부터 잘못 받았다는 이야기를 해줘서 ㄹㅇ 황당했습니다.
이거 하나 고치는데 약 30분정도 소요했고 이 앞에서도 모델링 오류때문에 시간이 꽤 끌렸기때문에 조금 화났지만 암튼 이제 맞겠지! 하고 제출했는데 틀렸습니다. 여기서부터 세명이 단체로 멘붕이 와서 코드를 눈씻고 찾아봐도 오탈자나 오류는 없었고 또다시 의심의 화살은 mcmf의 음수 간선 동작으로 돌아갔습니다. plast는 playsworld16한테 그냥 새로 하나 짜달라고 부탁했지만 playsworld16는 그냥 고치는게 더 빠르다는 의견이였고.. 저는 옆에다가 스트레스 돌리게 naive하나 짜달라고 부탁했지만 naive도 간단하지는 않은 문제라서 다들 머뭇머뭇하면서 진전이 없다가 끝나기 한 20분 전쯤?에 결정적인 반례를 찾아냈습니다.
오히려 처음으로 더 돌아가도 이득이 되는 경우가 있다는 것을 떠올리고, mcmf를 끝까지 돌리는게 아니라 이득이 되는 부분까지만 augment하도록 수정해서 끝나기 12분 전에 AC를 받아냈습니다. 이미 Team Redshift에도 F와 H 제출이 있었고 F를 맞았을 것이라고 예상하는 상황에서 떨리기도 하고 한 2시간 가량 이 문제 오류만을 고쳤기 때문에 집중력이 흐려질 때쯤 정신차리고 발견해서 너무너무 다행이라고 생각했습니다.
끝나고는 동아리실 다른쪽에서 대회를 치른 Team 탈PS는지능순과 치킨을 먹고와서 동아리방에서 스트리밍을 관전했고, 저는 Redshift가 H를 풀었을지 말지가 너무 궁금했습니다. 아마 너무 어려운 문제였어서 다른 팀원들은 무조건 못풀었다는 생각이였는데, 그래도 저는 Redshift가 신촌의 전통 강호이기 때문에 풀었을 수도 있다고 생각했지만 H는 역시 너무너무 어려운 문제였던 것 같습니다. (오픈콘에서 ksun48도 못품)
저희팀은 대회 끝나고 다음날 어제 있었던 F번같은 상황이 또 왔을 때 어떻게 대처해야 하는가를 좀 논의했고, 아마 결론은 최대한 뒤로 미뤄두고 정말 어쩔수 없는 경우에 stress를 돌리는 쪽으로 얘기가 나왔던 것 같습니다. 이외에도 많이 들어봤지만 우리가 모르는 알고리즘/자료구조 (Link-Cut Tree 등등..)을 우리가 공부해야 하는가? 등에 대해서 얘기를 나눠봤고 이건 아직 팀연습을 좀더 하면서 차차 생각해볼 문제인 것 같습니다.
이번 SUAPC는 항상 그랬지만 이번에는 특히나 수상권에서 연세대와 서강대의 싸움이 치열했습니다. 다들 프리즈 이후에 많은 문제를 해결했기 때문에 수상권에서 순위가 엄청나게 뒤집혔고 흥미로웠던 것 같습니다. 또 연세대 팀들이 이번에 2명씩 참가한 팀이 많아서 저는 높은 순위는 무리라고 생각했는데, 다들 너무 잘해서 놀랬습니다. 서강대 팀들도 엄청 강력한 팀들인데 말이죠
3위의 Team 탈PS는지능순 (dreami63, nflight11)은 제 예상보다 한참 위에 있었던 팀이고, 매우 훌륭한 성적으로 3위를 차지했습니다. 두명이서 하기도 하고, PS에서 좀 손을 뗀 것 같아서 수상할지 말지 궁금하던 팀이였는데, 놀랍게도 3위를 차지했습니다. 끝나고 치킨도 같이 먹었고, 둘이서 하기 때문에 상금을 둘로 나눠 가진다(!) 는 메리트가 있습니다.
4위의 Team 3인분같은2인분 (coconut99, wlgh7407, changhw)는 역시나 강한 팀이고, changhw가 해외여행을 가서 여기도 사실상 2인팀으로 운영됐습니다. 그럼에도 불구하고 프리즈 이후에 엄청난 집중력을 보여주면서 스코어보드 오픈 이후 엄청 밑에서부터 쭉 올라온 팀입니다.
8위의 Team . (dlguq0107, dhlee1031, starwh03) 팀은 22학번 팀으로, 현재 2명이 군대에 있는데도 수상했습니다. 싸지방에서 열심히 코딩했을 거 생각하니 마음이 아픕니다. 별개로 팀명은 정말 느낌없습니다... 신청할때 실수했다고 하는데 흠 ..;;느낌없네요
다른 분들의 후기도 있습니다. (댓글에 달아주시거나 알려주시면 추가하겠습니다)
- https://yabitemporary.tistory.com/115 (Team 탈PS는지능순, nflight11님의 후기)
- https://blog.naver.com/vermeil_/223568417158 (Team Redshift, lem0nad3님의 후기)
- https://now-cow.tistory.com/1 (Team 3인분같은2인분, changhw님의 후기)
- https://plast.tistory.com/26 (Team PS:Endgame, plast님의 후기)
아마도 다음 PS:Endgame의 후기는 ICPC일 것 같고, 다음주쯤에 망한 SCPC랑 LGCPC 후기같은걸로 찾아오겠습니다. 좋은 대회 열어주신 Sinchon ICPC 운영진 분들, 대회 운영진 분들께도 감사드립니다~~
'2024 대회일지' 카테고리의 다른 글
2024 ICPC Seoul Regional 예선 후기 (6) 2024.11.01 2024 고려대학교 MatKor Cup : Winter/Spring 후기 (7) 2024.09.02 2024 UCPC 후기 (2) 2024.08.14 2024 ICPC Asia Pacific Championship 후기 (8) 2024.03.09 2024 SUAPC winter 후기 (21) 2024.02.19