BLOG ARTICLE Google Code Jam | 3 ARTICLE FOUND

  1. 2008/07/28 2008 구글 코드 잼 (Google Code Jam) 2라운드 진출! (3)
  2. 2008/07/17 2008 Google Code Jam Begins! (4)
  3. 2007/09/12 Google's Plans for Google Code Jam


요즘 재미있게 하는 것 중 하나가 바로 Google Code Jam 이다.
구글에서 개최하는 프로그래밍 경시대회라 할 수 있는데, 세계 각국의 프로그래머들과 경쟁하면서 나 자신을 돌아볼 수 있는 좋은 기회가 된다 할 수 있다. ^^

구글 코드잼에 대한 소개는 여기를 참조...

지난 7월 16일 예선전 격인 Qualification Round 가 열렸고, 7월 26 - 27일 양일에 걸쳐 1차 예선인 Round1 이 열렸다. 대략 7 천명이 참가하여 ( 실제 대회 등록한 사람 숫자는 이보다 많을 듯.. Qualificaiton Round 에서 한번이상 submit 을 한 사람 숫자가 7천이다 ) Qualification Round 을 6800 명 정도가 통과했고, Round1 을 2520 명이 통과했다. Round 2 에서는 다시 상위 1000 명이 Round 3 에 진출하며, Round3 에서 상위 500 명이 Semi-Final 인 온사이트 Local Contest 에 출전해서 세계 각국의 구글 지사에서 지역예선 최종전을 치룬다. 그리고 여기에서 선발된 최종 100 명은 11월 14일 캘리포니아 마운틴 뷰의 구글 본사에서 결승전을 치룬다.

2008 Google Code Jam Qualification Round 후기
2008 Google Code Jam Round1C 후기

원래 목표가 2 라운드 진출이었는데 목표 달성은 한 셈. ;)

올해의 Google Code Jam 은 어떤 개발 환경이든, 어떤 프로그래밍 언어를 사용하건 전혀 제약을 두지 않는 점이 특징이다. 참가자는 문제에서 주어지는 Input 에 대해서 올바른 Output 만 제출하면 된다.
또 한가지 재미있는 것은, 같은 문제에 대해 Small Input 과 Large Input 으로 나누어 문제 스펙을 달리 한다는 것. Small Input 에서는 Brute Force 로 그냥 풀수도 있는 문제를 Large Input 에서는 제한시간이 초과 되도록 디자인 되어 있다. 이런 부분은 정말 문제 디자인을 잘한것 같다. 알고리즘과 문제해결에 대해 해박한 지식이 없으면 Large Input 에서 제시하는 대용량 인풋 처리가 불가능해 진다. brute force 로 풀릴 수 있는 간단한 문제라 할지라도 입력 횟수가 커지면 새로운 방식으로 접근해야 한다는 것을 몸소 보여주는 좋은 문제들이다.

구글 코드잼 로고도 재미있다. 리프레시 할때마다 하단의 hello world 코드가 조금씩 달라지는데, 다양한 언어로 코드 잼에 참여할 수 있다는 것을 상징적으로 보여준다.

재미있게! 즐겁게! 달려보자 ;)

사용자 삽입 이미지

Perl / Python
사용자 삽입 이미지
C
사용자 삽입 이미지
C++
사용자 삽입 이미지
Java


크리에이티브 커먼즈 라이선스
Creative Commons License
http://soyoja.com/trackback/233 관련글 쓰기
댓글을 달아주세요!
  1. 지나가던행인 2008/07/29 09:52  댓글주소  수정/삭제  댓글쓰기

    와! 2라운드 진출 축하드려요
    멋진데요ㅋ
    연습문제에서 좌절한 한 고등학생이었습니다 ㅠㅠ

  2. zf 2008/09/23 11:31  댓글주소  수정/삭제  댓글쓰기

    정말 이런분야에서 뛰어난인재들 많은데 민폐끼치거나 별로 생각이없어서 안하는 사람이 많을거라본다.
    정말 숨은재야의 고수들이 얼마나많은데

이름 암호 홈페이지



구글에서 전세계 프로그래머들을 대상으로 주최하는 프로그래밍 경시대회, Google Code Jam (이하 GCJ) 이 오늘 (7월 17일) 시작되었다.

구글 코드 잼 홈페이지

구글 코드 잼 2008 개최 - 구글코리아 공식 블로그의 소개글

구글 코드 잼 2008 임박... 전세계 프로그래머들의 경연장


2007 년에는 Google Code Jam - Latin America 대회만 열렸는데 ( 라틴 아메리카 국가의 사람들만 참가가 가능한 지역 대회 ), 구글은 이 대회를 끝으로 더이상 기존의 TopCoder 플랫폼을 이용한 GCJ 는 열지 않고, 구글에서 자체적으로 개발한 대회 플랫폼을 통해 대회를 치루겠다 공언한 바 있다.

그간 몇번의 알려지지 않은 Beta 대회와 정식으로 열린 Beta 대회 와 Practice Contest 를 통해 공개된 GCJ 의 새로운 대회 방식은 TopCoder 와 ACM-ICPC 의 장점들을 섞어놓은 듯한 모습이다.

우선 각 문제마다 배점이 다르다는 점이 ACM-ICPC 와 다르다. ACM-ICPC 에서는 모든 문제가 같은 비중을 갖고 있으며, 문제를 푼 횟수로 등수를 산정하기 때문에 쉬운 문제부터 찾아서 빨리 푸는 전략이 당연한 정석으로 되어 있다. 반면 TopCoder 에서는 문제의 난이도에 따라 배점 차이가 커서 ( 250, 500 ,1000 점... 문제의 난이도에 따라 배점이 2 배씩 차이가 난다! ) 어려운 문제를 먼저 푸는 전략을 쓰기도 한다. 그리고 쉬운 문제는 틀려도 어려운 문제를 맞춰서 등수가 뒤바뀌는 경우도 많이 발생한다.

GCJ 에서는 문제 별로 배점이 다르며, 같은 문제마다 Input case 의 Boundary 가 다른 2 가지 Input 이 주어진다는 점이 특이하다. 즉, Small Input 과 Large Input 의 두가지가 제공되는데, Small Input 은 검사할 범위가 작으므로 쉽게 해결할 수 있으며, 맞는지 틀리는지 여부를 바로 알 수 있다.

Large Input 은 Small Input 보다 입력값의 범위도 더 크며, 실행 결과는 TopCoder 처럼 대회가 종료된 이후에 알려주기 때문에 스스로 생각하기에 완벽하다고 생각되는 솔루션을 충분히 테스트를 거친 후에 제출해야 한다.

Qualification Round 의 경우 Small Input 은 문제당 5점, Large Input 은 문제당 20 점이었다.
주어진 모든 Test Case 를 통과해야만 점수를 받을 수 있으며, 테스트 케이스에 대해서 하나라도 틀릴 경우 0 점이다. ( All or Nothing 방식. 부분점수란 없다. ) 그리고 ACM-ICPC 와 마찬가지로 점수 ( 문제푼 횟수) 가 같을 경우에는 빨리 푼 순으로 시간이 산정되며, Small Input 문제를 틀리는 경우 Penalty Time 이 추가된다.

GCJ 는 TopCoder 와는 달리 별도의 플랫폼이 필요없이 웹 브라우저만 가지고 대회를 치룰 수 있었다. 플랫폼에 자유롭게 한 것은 많은 참가자들을 배려한 부분으로 보여진다. 또한, 개발 언어에 대해서도 특별한 규정이 없었다. Input 에 대해서 원하는 Output 만 출력한다면 어떤 개발 언어를 사용하든지 문제가 될 것은 없다는 의미인 것 같다.

GCJ 는 7월 17일 시작하여 4 번의 온라인 라운드와 준결승 오프라인 라운드로 나누어 치뤄지며, 최종 결선에 오르는 100 명은 미국 마운틴 뷰의 구글 본사에서 최종 결승전을 치룬다.

대회 상금

총 상금은 8 만달러 규모...  우승상금 1 만달러.

재미있는 것은 우승자에게 부상으로 전세계 어느곳이든 구글의 사무실에서 식사를 10 번 할수 있는 기회를 제공해 준다는 것이다. ( 최대 10 명까지 친구를 데리고 갈 수 있다 한다! ) 직원에게 무료로 제공하는 맛있고 럭셔리한 식사로 유명한 구글의 근무환경에 대한 자부심이 엿보인다.

PS) 아직도 참가 신청과 참여가 가능하므로 관심있는 분들은 참가를...
크리에이티브 커먼즈 라이선스
Creative Commons License
http://soyoja.com/trackback/229 관련글 쓰기
댓글을 달아주세요!
  1. Radiant 2008/07/20 09:15  댓글주소  수정/삭제  댓글쓰기

    맨날 눈팅만 하다가 실제로 덧글 남겨봐요 ㅎㅎ
    SRM에서 오타로 Radient를 사용중인 유저입니다 ㄱ-

    사실 코드잼도 관심 많았는데, 지난번 TCO '08의 쓰라린 추억때문에 그냥 접어버렸습니다.. ㅠㅠ
    역시 세계 레벨의 벽은 높은것 같아요 ㅠㅠ

  2. Radiant 2008/07/21 00:23  댓글주소  수정/삭제  댓글쓰기

    일단 참가는 할 예정인데, Internet Competition 날에 너무 중요한 면접이 겹쳐서
    완전 곤란한 상황이 되었습니다 ㅠㅠ

    그래도 다행히 면접은 오전이라 어떻게든 양립이 가능할 것 같기는 한데,
    혹시라도 곤란한 상황이 생길까봐 불안하네요;;;

이름 암호 홈페이지


구글 공식 블로그에 불과 몇시간 전에 공개된 내용이다.

http://googleblog.blogspot.com/2007/09/our-plans-for-code-jam.html

즉, 구글이 조만간 Google Code Jam 을 개최하기 위해서 준비하고 있으며, 2003 년 부터 진행되었던 TopCoder 의 플랫폼을 활용한 방식이 아닌, 구글이 자체적으로 준비, 개발하는 새로운 프로그래밍 대회 형식이 될 것이라고 공개한 것이다.

Google Code Jam 이란?
- Google 이 주최, 후원하는 전세계 모든 프로그래머를 대상으로 한 대규모 프로그래밍 문제풀이 대회이다. 작년의 경우 전세계에서 약 2 만명이 참가하여, 최종 결선에 오른 100 명은 뉴욕에서 결선 대회를 치루었다. 구글에서 뉴욕까지 참가하는 대회 경비를 모두 후원하였으며, 1위에게는 1만 달러의 상금이 주어졌다.

작년의 경우 한국에서는 2 명이 최종 결선에 참가하여, 그 중 한명은
Google 에 입사하였고 나머지 한분도 알고리즘 문제풀이 대회에서 굉장히 유명한 활약을 하시는 분이다. ^^


사용자 삽입 이미지

크리에이티브 커먼즈 라이선스
Creative Commons License
http://soyoja.com/trackback/89 관련글 쓰기
댓글을 달아주세요!
이름 암호 홈페이지