BaaaaaaaarkingDog
코딩, 해킹
2019 ACM-ICPC Seoul Regional 후기

눈물의 서울리저널 후기입니다. 결론부터 말하면 화끈하게 말아먹었습니ㄷr,,,,,

 

작년과 동일한 팀으로 출전했고 여름부터 본격적으로 팀연습을 했습니다. UCPC / Kaist Mock Competition 등을 포함해 대략 20개 정도의 셋을 돌았고 어느 정도의 기복은 있었지만 그래도 확실히 작년보다는 잘해졌고 리저널에서 좋은 성과를 낼 수 있겠다고 생각했습니다.

 

작년과 달리 월드파이널에서 사용하는 컴퓨팅 환경을 그대로 사용해 CLion이 제공되었습니다. 작년에 코드블럭에서 화끈하게 데인 기억이 있어 CLion을 쓸 수 있는 것이 마음에 들었습니다.

 

대회 당일, 2시간 10분 쯤에 6솔브에 도달했습니다. 이때까지 1번도 틀리지 않고 무난하게 흘러갔습니다. 제가 B에서 모든 정점간 거리의 제곱의 합이라고 문제를 잘못 이해해서 시간이 끌렸던게 좀 아쉽긴 했지만 엄청 말린 것 까지는 아니었습니다.

 

이후 조금씩 풀리고 있던 G, K를 봤고 저는 K로 들어가 약간의 고민 끝에 세 점을 잡아 평면을 만들어 아래 위를 나누는 O(n^4) 풀이를 착안해냈고 100% 완벽하게 정당성을 증명한 것은 아니었지만 적절한 평면으로 두 그룹을 나눔은 확실해보였고 그 평면을 살짝만 비틀면 세 점에 걸치게 할 수 있을테니 충분히 가능한 풀이라는 생각을 했습니다.

 

제가 공간 기하에 굉장히 약하지만 팀노트에 "삼차원에서 특정 점이 세 점으로 이루어지는 평면의 위에 있는가? 아래에 있는가?"를 구해주는 라이브러리가 이미 있었기 때문에 날로 먹는게 가능한 상황이었습니다.

 

n = 100이어서 시간이 살짝 걱정되었지만 로컬에서 테스트해보니 대략 0.8초 정도가 걸리길래 TLE는 발생하지 않을 것 같다 싶었습니다.

 

이런 상황에서 코드를 작성해 제출하니 Wrong Answer를 받았습니다. Wrong Answer는 예상하지 못했어서 굉장히 당황하며 혹시 "round to"의 의미를 잘못 이해했나 싶어 "round to"가 버림을 의미하는지, 반올림을 의미하는지, 올림을 의미하는지 물어봤는데 반올림을 의미하는 것이라고 답변이 왔습니다.

 

당시에는 세 점을 잡아 평면을 만들어 아래 위를 나누는 풀이가 아예 틀렸거나, 오차 문제일 것이라고 생각했습니다. 그래서 랜덤 데이터를 만들어 O(2^n)풀이와 정답이 일치하는지 확인하고, 식을 잘 정리해 오차가 발생할 수 있는 나눗셈 연산을 가장 마지막에 하게끔 코드를 고쳤습니다. 그런데 랜덤 데이터에서 반례는 전혀 잡히지 않았고, 오차를 줄이기 위해 식을 정리하고 제출해도 여전히 WA였습니다. 이후 double을 전부 long double로 고치고 냈는데도 또 WA가 나왔고 그대로 장렬하게 전사했습니다...

 

G는 틈틈히 다른 팀원이 열심히 풀고 있었고, K를 제가 포기한 이후에는 어떻게든 G라도 맞자고 하며 다같이 달라붙었는데, G도 계속 맞왜틀이었습니다. 그렇게 절망하며 대략 3시간 동안 한 문제도 추가로 해결하지 못하고 대회가 종료되었습니다.

 

월드파이널 진출을 노리고 열심히 하긴 했지만 "우리가 이만큼 노력했으니 월드파이널에 꼭 나가야만 해!"와 같은 마인드는 아니었습니다. 다른 팀들도 정말 열심히 했을거고, 저희 실력이 살짝의 운이 있어야 월드파이널에 나갈 수 있을 정도였기 때문입니다.

 

그래도 올해가 마지막 ICPC인데 월드파이널에 나가지 못하더라도 최소 "졌지만 잘 싸웠다" 정도는 되어야 기분 좋게 끝낼 수 있을텐데 작년 대학 기준 6등, 팀 등수 10등에서 올해 대학 기준 12등, 팀 등수 20등으로 미끌어진건 너무 충격이었습니다. 지금 보니 대학 기준 등수도, 팀 등수도 정확히 2배가 됐네요,,,,

 

그 와중에 Cafe Mountatin 팀은 올솔브를 하셨고 inseop is Korea top 팀도 넘사의 퍼포먼스를 보여주셨습니다 팬이에여,, 고대에서 저희와 같이 경쟁하며 여름을 불태웠던 지구이팀은 8솔에 성공했습니다. 특히 같은 대학의 팀이면 월드 파이널에 무조건 한 팀 밖에 못 나가니 어떻게 보면 참 애매한 사이지만 그래도 서로에게 긍정적인 영향을 주는 좋은 관계였다고 생각합니다. 같이 베트남 리저널 가서 잘해보자ㅠ

 

아 그리고 올해도 작년과 같이 먼저 시상을 한 후 스코어보드를 공개했습니다. 이건 진짜 너무 아닌 것 같은데 안바뀌나요..??

 

원래 기분이 우울할 땐 고기니 안암으로 돌아와 Alkor 동아리 동기들과 고기를 조졌습니다. 안암에 고품콩이라는 곳인데 조금 비싸지만 ㄹㅇ 맛있습니다. 다음에 안암올 일 있으면 드세요ㅎㅅㅎ

 

정말 다행히도 학교에서 베트남 리저널 경비를 지원해줘서 마지막 기회가 남아있습니다. 현재는 팀원들 모두 번아웃 상태여서 미리 논의한대로 잠시 ps에서 멀어져 롤도 하고 사람도 만나고 그러면서 쉬고 있습니다. 원래 알고리즘 강의를 완강내고 Django로 육목AI랑 육목을 할 수 있는 웹사이트를 만드는게 목표였는데 그건 귀찮아서 다음에 할게여,,,, 베트남 리저널에서 유종의 미를 거두고 알고리즘을 익절할 수 있으면 좋겠습니다.

 

스코어보드 : http://icpckorea.org/2019/regional/scoreboard/

 

-----------------------

리저널 테스트 데이터가 공개되어 확인을 해보니, K번 문제에서 답이 0일 때 "0.000000"을 출력해야 하는데 "0"을 출력해서 틀린 것으로 보입니다. 그럴거면 소숫점 아래 6자리까지 무조건 출력을 해야한다고 명시를 해놓던가 "Print exactly one line containing the minimum total color transfer, rounded to the sixth decimal point." 이라는 문장을 보고 "0.000000"대신 "0"을 출력해서 틀렸다는 것을 어떻게 알아차리라는건지, 애초에 실수형 문제인데 절대 오차/상대 오차로 해두지 않고 왜 저런 식으로 출력형식을 만들어놓았는지 정말 이해가 가지 않고 또 대회때 고통받은 것을 생각하면 화가 납니다. 정말 짜증나지만 이미 지나간거 징징거려봐야 의미없는 일이고 베트남 리저널에서는 잘 할 수 있도록 해야겠습니다.

'대회 > 각종 대회 후기' 카테고리의 다른 글

2019 ACM-ICPC Seoul Regional 후기  (4) 2019.11.14
DEF CON CTF 2019 후기  (2) 2019.10.14
SCPC 2019, UCPC 2019 후기  (0) 2019.08.08
WCTF 2019 후기  (2) 2019.07.12
0CTF/TCTF 2019 후기  (0) 2019.06.19
Codegate 2019 본선 후기  (0) 2019.03.30
Google Hash Code 2019 후기  (3) 2019.03.05
  Comments
  • 알린이
    스승님 항상 응원하고 있습니다.
    화이팅 입니당
    • 스승이라니,,, 아무튼 응원 감사합니다ㅎㅎ

      이번에 베트남 리저널 갔는데, 아쉽게도 월파갈 성적은 못받았지만 그래도 잘 마무리하고 온 것 같아요ㅎㅎ
    • 알린이
      스승님 맞지요, 진짜 알고리즘에 대한 기초가 전혀 없던 제가 막무가내로 알고리즘 공부법에 대하여 구글링도중 바킹독님 블로그를 우연찮게 접하게 되었고, 그것을 시작으로 9월 초부터 STL공부 + 바킹독님 강의자료로 공부를 시작하여 3달동안 백준 300솔브했습니다.

      바킹독님 문제집은 dp, 시뮬 부분은 다 못풀었는데 올해 가기전에 다 푸는게 목표입니다.

      이번 하반기에는 공부한 기간도 짧고, 공모전으로 인한 시간부족 + 저의 역량 부족으로 코테에서 고배를 마셨지만 이제 곧 졸업이라 앞으로는 ps에 투자할 시간도 많으니 확실히 준비해서 내년 상반기에는 코테문을 부셔 버리겠습니다.
      그리고 삼성 A+형을 상반기 전까지 따는것이 목표인데 A+이 따고 싶으니 한단계 더 높은 B형을 목표로 노력해볼까 하네요.


      그리고 지금 최신글 읽고 왔습니다..
      이제 학부졸업을 앞두신지라 ACM도 끝나셔서 많이 아쉬움이 많이 남으시겟네요..
      그래도 미련없으시다고 하시고, 얻어가는것이 많으시다고 말씀하시니 다행입니다, 앞으로 무슨일을 하시던 온라인상이지만 항상 응원하겠습니다.

      연말 마무리 잘하시고 나중에 또 좋은소식 들고오겠습니다 화이팅!
    • 앗 그렇군요.. 사실 저도 작심삼일하는 일이 한두개가 아닌데 9월부터 지금까지 꾸준하게 300문제나 푸셨다니 존경합니다ㅎㅎ

      지금 느낌으로 계속 꾸준하게 하시면 내년 상반기에 코딩테스트 때문에 애먹으실 일은 없을거에요. 좋은 소식 있으면 알려주세요!! 그리고 응원 감사합니다 <3
댓글 쓰기