본문 바로가기

Daily/Code Fest

HashCode 2020 참가 후기

처음으로 PS 대회에 참가해봤다.
DSC Korea 슬랙에서 팀원을 구한다는 얘기를 듣고 참가를 하게 됐는데!

하하 UTC 17:30이라니,, 한국시간으로 오전 2:30부터 6:30까지 였다. 그래서 팀원들끼리 코딩할 장소를 찾기 위해 에어비엔비도 잡고 두근두근 설레 하면서 기다렸다. 그렇지만 새벽 2:30부터 6:30이라니 너무 가혹해.. 동양도 배려해 주세요..

2시가 되길 기다리면서 팀원들하고 쪽잠도 자고, 사진도 찍고, 코딩 시작!! 
근데 문제가 너무 대단,, 이걸 정확하게 짜는 게 4시간 만에 가능한가? 싶었달까

언제까지 열려있을지는 모르겠지만 여기서 문제를 확인 할 수 있다.

https://hashcodejudge.withgoogle.com/#/rounds/6313004828196864/scoreboards

 

Judge System | Hash Code

Question? We put together a list of the most Frequently Asked Questions on the Hash Code website. In the FAQ, you'll find more information about the Judge System, forming a team, the practice problem, and more. If your question is not covered by the FAQ, y

hashcodejudge.withgoogle.com

팀원들마다 각자의 방법으로 문제를 풀고, 서로서로 각자의 코드를 넣어보면서 진행을 했다. 내 코드가 가장 최저점이었음 역시 PS는 나랑 안맞아 어떤 팀원은 simulation을 돌리는 것처럼 짰고, 다른 팀원은 아예 머신러닝을 푸는 것처럼 요구사항에 맞춰 가중치를 다르게 해서 코드를 짰다. 

서로서로 응원하고 얘기하면서 코드를 짰는데 팀 프로그래밍 대회라니 진짜 새로웠던 경험!! 그 결과 우리의 최종 점수를 확인할 수 있었고 다들 그냥 결과가 나온다는 것만으로도 엄청 행복했었다. 해커톤이랑은 또 다른 매력!!!

hashcode judge system에서 가장 인상 깊었던 건 insight 시스템이었다. 코드를 제출하면 왼쪽 사진처럼 error 이유 혹은 내가 얻은 point를 알 수 있었는데, INSIGHTS 버튼을 누르면 오른쪽 사진처럼 구글에서 준 문제에 대해서 평가한 항목을 볼 수 있었다.

끝나고 나서 생각해보니 알았는데, hashcode가 일반적인 PS 대회였다면 제출한 소스코드에 대해, 내부 테스트 케이스를 체크하고 Pass, NonPass로 결과를 알려 주었겠다는 생각이 들었다. 그런데 실제로는 제출한 결과 파일을 분석해, 파일의 결과가 얼마나 적은 scan, signup, libraries를 거치는지를 판단해 점수가 측정되는 것으로 보였다.

따라서 결국 정확한 답이 있는 코드보다는 최대한 정답과 가까운 값을 찾는 것을 요구하는 것 같았고, 최대한 기대값이랑 가까워지게 결과를 낸다는 점에서 머신러닝스러운 코드(?)를 짜야하나 싶었다. 여튼 일반적인 PS 대회는 아닌듯!

어찌 됐든 길 줄 알았지만 빠르게 지나갔던 4시간이 지나고 22,142,741점으로 마무리했다. 꺄아 이렇게 높은 점수라니 우리 팀원들 짱짱이다!!!  결론적으로는 세계에서 총 10724팀 중 3555등, 한국에서 총 70팀 중 46등으로 마무리했다.

실제 랭킹을 보니 상위권 싸움이 엄청 치열하던데, 우리도 가중치를 조금만 수정하고 더 나은 결과를 낼 수 있는 시간이 있었으면 더 좋았겠다 싶었다. 그래도 참가도 했고, 점수도 낮지 않은 점수를 냈다는 거에 재밌었다!!ㅎㅎ

다음에 참가할 DSC, GDG, GDE, Google 행사도 기대된다. 
TO BE CONTINUE