국제 정보 올림피아드

International Olympiad in Informatics

공식 홈페이지
한국 홈페이지

1 개요

IOI가 아니다

1989년 개최되기 시작한 국제 과학 올림피아드 중 하나.

타 국제 올림피아드가 다 그렇듯이 참가국들이 매번 돌아가면서 개최하며 특히 2002년에는 경기도 용인시에서 개최되었다. 여담으로 IOI의 로고가 각 나라의 문화를 반영하여 참신하게 제작되며, 문제 상세 설명을 위해 그럴듯한 상황을 만들어내야 하는 정올 특성상 각 나라의 풍습이 문제에 반영되어 있는 경우가 많다. 대한민국의 IOI 2002 문제, 유토피아에 대한 비유가 인상적이다.

매년 한결같은 난이도 인플레이션이 발생한다. 가장 중요한 이유는 참가자들의 실력이 빠르게 인플레이션 되고 있다는 점이며, 그 외 2012년까지 대회 환경이 참가자들에게 유리한 방향으로 개선된 것도 인플레의 이유. [1] 실력만 있으면 5시간 안에 풀 수는 있지만 그래도 충분히 어려운 문제, 그리고 만점자는 정확히 한명 정도 나오는 대회를 만드는 것이 주최측의 방향인 거 같다.

한국은 1992년부터 IOI에 참가하기 시작하여, 매년 4명의 국가대표가 꾸준히 출전하고 있다.

2015년 한국은 3명이 금메달, 1명이 은메달을 수상함으로써 러시아, 중국, 미국과 함께 종합 순위 1등의 성적을 기록했다. 또한 한국인 참가자 윤지학이 대회 참가자 중 유일하게 600점 만점을 기록함으로써 개인 순위 1등을 기록했다. 이는 한국의 24년 참여 기간동안 가장 큰 성과이다.
ioi2015.png

2 주요 한국인 수상자

한국은 2015년까지 금메달 33개, 은메달 33개, 동메달 26개를 땄다. 국제적으로 강호에 속하는 나라다. 전체 IOI 한국 대표단 성적.

아래 리스트는 3등 이내에 든 한국인 리스트. 탑골드는 전체 1위를 뜻한다.

  • 1992년 : 김범준 (200 / 200점) 탑골드
  • 2002년 : 정완영 (510 / 600점) 탑골드 [2]
  • 2003년 : 여환승 (455.4 / 600점) 탑골드 [3]
  • 2006년 : 박재현 (466 / 600점) 2등 [4]
  • 2015년 : 윤지학 (600 / 600점) 탑골드 [5] [6]

3 상세

3.1 국가대표 선발

국내 올림피아드를 거치고 나서 우수한 학생을 국가대표로 선발하거나 혹은 아예 국내 올림피아드가 국가대표 선발의 목적만을 가지고 있는 타 올림피아드와는 다르게 한국정보올림피아드와 별개이다. 이쪽은 아예 처음부터 IOI 교육생 선발을 접수받아 교육을 하는 상황. 2015년 기준으로 접수 20명/KOI 30명이다.

중학교 2학년 ~ 고등학교 2학년을 모집하며, 2년 교육 과정이다. 처음 교육에 참여하면 처음반, 한 번 교육을 이수하면 계속반으로 간다. 교육을 마치면 졸업반이라고 불리는데, 모의고사 / 선발고사 / 통신교육 권한이 주어지는 것이 전부. 아재

3.1.1 서류전형

지원서와 200 · 400 · 400자 가량의 간단한 자소서를 온라인으로 접수하고, (보통 담당 학교 측에서) 추천서를 우편으로 접수한다. 또한 생기부와 챙길 대회 상장 등이 있으면 본인이 직접 우편으로 보내야 한다.

지원서 · 자소서를 온라인으로 쓰니까 우편으로 이 생기부 보내는 걸 까맣게 잊어버리는 경우가 드문드문 있다. 특히 학교 측에서 추천서 써 줄 테니까 참고자료로 생기부 뽑아오라는 경우에는, 자기가 직접 부쳐야 한다는 것을 까먹고 생기부 보내는 것도 학교에서 알아서 해 주겠지 하는 안일한 생각으로 시간을 때우는 경우가 많다. 문제는 대회측에서 서류미비 사실을 해당 학생에게 고지를 안 한다! 결국 이 경우 1달동안 희망을 가지며 열심히 대회를 준비하다가 갑작스런 서류떨 소식을 듣고 항의전화해서 서류미비라는 청천벽력 같은 상황을 맞이하는 수밖에 없다... 혹시 교육생 접수를 희망하는 위키러가 있다면 다른 누구도 아니고 자기 대회라는 것을 명심해야 한다. 서류는 다른 누구도 아닌 자신이 챙겨야 한다.

서류 합격이 되면 면접 심사와 봄 통신 교육을 통해서 여름학교 선발 여부가 결정된다. 면접 심사는 매년 지정 대학교에서 실시하며 난이도는 매년 다름.

3.1.2 봄 통신교육

처음반 후보 + 계속반 + 졸업반을 대상으로 한 봄 통신교육이 진행된다. 반마다 제공되는 문제들이 차이가 있을 수 있다. 자체 서버에서 통신교육이 진행된다.

3.1.3 여름학교

IOI 2015 겨울학교부터 계절학교는 삼성전자 인재개발원에서 시설을 지원해주고 있다. 기사 삼성의 지원 이후로 계절학교의 교육 환경이 아주 많이 개선되었다. 숙소, 식사, 교육 시설은 그 어떤 계절학교와 비교해도 우수한 편. 꼭 삼성 직원 분들한테 감사한 마음으로 다니자. 다만 회사 시설인지라 외부와의 단절이 완벽하다. [7] 회사 시설인만큼 소송방지바람 선에서 작성하길 부탁.

여름학교에서는 처음반과 계속반이 참가하며, 처음반은 오전에 수업을 듣고 오후에 실습을 하며, 계속반은 하루종일 실습을 한다. 특이한 점으로는 조교의 퀄리티가 매우 높은데, 그냥 단순히 지도/보조를 하는 게 아니라 학생을 가르친다 (...) 심지어 교수보다 더 (...) 이러한 현상의 이유는 1. 거의 모든 조교가 IOI/ICPC 등에서 활약해본 고수들이며 2. 고로 최근 출제 경향 같은 데도 민감한데 3. 출제 경향이 자주 바뀌는 편이고[8] 4. IOI는 코딩을 통해 자기 논리의 정당성을 보여줘야 하는데 교수님들은 코딩과는 거리가 있으니..

2015년 현재는 경기과학고등학교에 강력한 학생들이 많은 편이다. 옛날에는 KSA가 강력했다는 내용이 적힌 백괴사전 글을 보면 이건 시대에 따라 좀 가변적인거 같지만. 영재학교라 올림피아드를 대비하기 상대적으로.. 편리한 환경이며, 또한 현재 정보를 좋아하는 사람(선생님 포함) 들간의 커뮤니티가 가장 활발한 학교가 경기과학고인 점이 크다.

게임(컴퓨터 게임/보드게임/카드게임 등)을 한다든지 휴대전화를 제출하지 않는다든지 무단으로 인터넷에 접속한다든지 하는 등의 사고를 치면 퇴소조치되어, 영원히 IOI 교육생 선발에서 제명당한다는 전설이 있는데... 실제로 퇴소조치 된 사람이 매년 있다. 지못미

3.1.4 가을 통신교육

여름학교 수료자 전원 + 졸업반에 대해, 봄 통신교육과 동일하게 9월 중~후반부터 11월 말까지 가을 통신교육을 진행한다. 봄 통신교육과 문제가 차이가 있을 수도 있고 없을 수도 있으며.. 처음반 / 계속반 + 졸업반이 받는 문제 역시 차이가 있을 수도 있고 없을 수도 있다 (....) 이건 년도마다 다르다. 일반적으로 통신교육 문제라 하면 처음반 가을통신교육 문제를 뜻함.

계절학교 자체가 국가대표 선발을 위한 교육 기관인지라 처음반 통신교육은 원래 IOI 수준의 어려운 문제들로 가득 차 있었다. 아직도 그렇고... 이 과정에서 너무 어렵다는 민원이 들어왔는지 (...) 쉬운 문제가 20개 정도 추가됐는데 쉽다기 보다는 코딩 노가다류 문제가 많아서[9] 말이 많은 편. 확실한 건 어려운 문제들은 정말 수준이 높다. 다만 통신교육 자체의 문제량이 그렇게 많지는 않으니 제대로 공부하려면 더블릿 여기이나 백준 온라인 저지 같은 타 OJ 역시 병행해서 사용해야 한다.

3.1.5 겨울학교

가을 통신교육 참가자에 대하여 겨울학교 참가자를 선발한다. 가을 통신교육에서 어느정도 성실하게 참여해야 겨울학교에 들어갈 수 있다. 겨울학교의 교육 시스템은 여름학교와 거의 동일. 처음/계속반 모두 여름학교보다 어려운 내용으로 교육한다.

3.1.6 국가대표 선발

1차, 2차에 걸쳐서 선발고사가 진행되며, 1차는 겨울학교 마지막 날에, 2차는 2월 중에 진행된다. 2016년부터 선발고사 성적은 시험 직후 공개되어서 국가대표가 누군지가 선발고사 종료와 동시에 결정된다. [10] 선발된 4명의 국제대회 참가자는 합숙 훈련 등을 거쳐서 국제 대회를 나간다.

국가대표 선발이 안되더라도 처음반에게는 선발고사의 성적이 계속반 진급자 결정에 가장 큰 영향을 미친다. 처음반에서 오직 1/4 정도만 계속반으로 진급할 수 있기 때문에 선발고사는 아주 중요하다.

현재 경기과학고등학교 에서 가장 많은 국가대표를 배출 중이다. 2015년에는 윤지학 학생을 포함한 국가대표 3명이 경기과학고 출신. 2016년에는 4명 중 3명이 경기과학고 재학생이고, 1명은 서울과학고 재학생이다.

3.2 국제 대회

기출문제 번역(2008년 20회까지) [11]

대회 참가자들은 일주일 정도 개최지에서 생활하게 된다. 대회 전날에 예비소집을 해서 연습문제를 풀거나 컴퓨터를 점검하게 한다.
본격적인 대회는 이틀 동안 열리며, 참가자는 하루에 5시간 동안 3문제를 풀어야 한다. '원하는 입력을 한 번에 넣어서' '제한시간 내에 연산하여' '조건을 완벽히 만족하는 출력을 한 번에 내는' 세 가지 제약만 있는 프로그램을 짜는 유형만 있는 한국정보올림피아드의 경우와는 다르게, '주최측이 제시한 최적해와 가장 가까운/보다 높은 최적해를 찾는 문제', '주최측에서 함수를 하나 제공하고 함수의 출력결과를 받아, 그 함수를 최대한 적게 호출하여 원하는 결과를 얻는 인터랙티브 문제' 필기문제[12] 같은 다양한 유형이 나온다.

문제 배점은 1997년 이후로는 1문제를 제외하고 문제당 100점이다.[13] 부분 점수 시스템이 존재하며, 부분 점수를 맞는 이유는 주로 1) 큰 데이터에서 느리거나 2) 특수한 경우에서만 제대로 작동하거나 3) 신유형에서는 함수 호출 회수가 많다던지 압축률이 낮다던지 등등... 생각보다 복잡하니 자세한 건 IOI 기출문제를 보는게 좋다 (...)
많은 OJ 컨테스트와 마찬가지로 실시간 채점을 하여 프로그램이 맞았는지, 시간초과가 났는지, 답이 틀렸는지 따위를 확인할 수 있다. 고로 실시간으로 자신의 점수를 알 수 있지만, 등수는 알 수 없다. [14] 2013년에는 채점서버 과부하로 채점이 지연되다 중단되는 사고가 일어난 적도 있다.

여담으로 몇년 전부터 인터넷으로 학생들의 성적을 생중계해준다. 맨 위 사진도 생중계 사이트의 일부. 정보올림피아드에서만 가능한 시스템으로, 관심이 있다면 재밌게 볼 수 있을 수도..?

자신의 최종 등수에 따라 금·은·동메달이 수여된다. 전체 참가자 중 상위 1/12까지가 금메달, 1/4까지가 은메달, 1/2까지가 동메달이며 동점자는 상위 메달을 수여한다.

  1. 옛날에는 KOI 지역본선처럼 자기가 낸 답안의 점수를 알 수 없었다. 즉, 자기가 만점이라고 생각하고 제출했다 해도 실수 한번에 0점이 충분히 나올수 있다는 말. 약간의 과도기를 거친 후 2012년 이후에는 답안을 그때그때 제출 가능하며 자기가 낸 답안의 점수를 실시간으로 검사받을 수 있는 시스템이 적용되어서, 실수의 발생 가능성을 최소화했다. 아마 더 이상 편리해질 일은 없을 것으로 보인다..
  2. 당시 서울과학고등학교 재학생으로 이루 서울대학교로 진학했다
  3. 당시 대구과학고등학교 재학생으로 이후 칼텍으로 진학했다
  4. 당시 서울과학고등학교 재학생으로 이후 스탠퍼드 대학교로 진학했다
  5. 대회 유일 만점자다.
  6. 당시 경기과학고등학교 재학생으로 이후 MIT의 스카웃 제의를 거절하고 서울대학교로 진학했다
  7. 사실 대학에서 하던 때도 좀 단절된 분위기를 추구하긴 했다
  8. 년을 거듭할 수록 난이도 차가 가파르게 올라간다. 당장 10년 전 문제랑 요즘 문제랑 비교해보면...
  9. 대략 20년은 된 문제들로 추정된다 (...)
  10. 그게 아니더라도 자기 점수를 실시간으로 알 수 있으니, 점수 공유하면 대충 윤곽이 잡혔지만...
  11. 원문은 위의 공식 홈페이지에서 볼 수 있다.
  12. 옛날 기출문제 중에는 필기문제도 있었지만 지금은 다 컴퓨터로 한다.
  13. IOI 2010 Languages, http://ioi2010.org/Tasks/Day1/Language.shtml 참고. 110점이 만점이며 대회때 101점이 최고였다.
  14. 외부인들은 등수까지 알 수 있다.