第10回日本情報オリンピック本選概要

2010年12月31日
情報オリンピック日本委員会

更新履歴

目次

日時

2011年2月12日(土)15:00 ~ 2011年2月13日(日)17:00

会場

国立オリンピック記念青少年総合センター  センター棟 102号室

住所 〒151-0052 東京都渋谷区代々木神園町3番1号
電話番号 03-3469-2525
URL http://nyc.niye.go.jp/

スケジュール

2月12日 (土)
受付開始   15:00 (競技用PCには16:00まで触れません)
実機練習時間 16:00~18:00
講演 18:15~19:00
チェックイン 19:00~19:30 (宿泊室整理)
懇親会 19:30~20:30 (懇親会は無料です)
宿泊
2月13日 (日)
開場 9:00
着席 9:30
本選競技 10:00~14:00
昼食 14:30~15:30
問題解説 15:30~17:00
アンケート後,自由解散

付き添い教員との懇談会

2月13日11:00~13:00に,本選競技と併行して,付き添いで来場された学校の先生方との懇談会を実施しました 

本人確認

本選当日は,本人確認を実施します.

参加申込書・保護者承諾書

参加者には,参加申込書・保護者承諾書を提出していただきます.

交通費の補助について

本選参加のための往復交通費は,情報オリンピック日本委員会が経路等を調査して額を決定し,全額補助します.

本選競技内容

日本情報オリンピック本選で出題されるのは,アルゴリズムを設計し, そのアルゴリズムを C, C++ のいずれかのプログラミング言語で実装するという問題ばかりです. また,どの問題にも実行時の実行時間と使用メモリに制限があります. 問題によってはアルゴリズムの効率が重要となります. アルゴリズムの効率が重要な問題では, 効率が異なる解法を識別できるよう採点用入力データは調整されています. どの問題にも,(効率はともかくとして) 正当な解を出力する妥当な解法であれば, その問題の制限の中で正解を出力できるような採点用入力データがいくつか用意されています.ですから, 競技参加者がどのような採点用入力データに対しても制限内で正解を出力する解法を得られなかった場合も,問題に取り組む意味はあります. 第6回~第9回の日本情報オリンピック本選の問題・解説を参照されることをお勧めします.

第10回日本情報オリンピック本選競技実施方法概要

競技時間 4時間
課題数 5題
配 点 配点は各課題20点で,満点は 100 点となる. 各課題の採点用入力データ数,および,課題内の配点は,本選競技時に配布する Overview Sheet に記載する.
使用できるプログラミング言語 C, C++
使用できる用品 鉛筆,シャープペン,ボールペン,消しゴムなど筆記用具を使用できる. 本委員会では用意しないので筆記用具は持参すること. ただし,計算用紙は本委員会が用意し配布する.
使用できる機器・ソフトウェア 本委員会が用意した機器のみ使用できる. また,本委員会が事前に準備し使用を許可したソフトウェアのみ使用できる.
本選で使用する予定の機器・環境は以下の通りである.(変更になる場合がある.)
ハードウェア
ノート型パーソナルコンピュータ (富士通 FMV-A8290 【FMVNA1CG】)
  • CPU: Intel Core2Duo P8700 2.53GHz
  • メモリ: 2GB
  • ハードディスク: 160GB
  • 本体ディスプレイ: 15.6 型TFT液晶ディスプレイ
ソフトウェア
  • Ubuntu 10.10 Desktop 日本語 Remix
    http://www.ubuntulinux.jp/products/JA-Localized
    (Windows 7 Professional 上で動作する VMware Player 3.1 の仮想マシン)
    練習用仮想マシンをダウンロードできるようにする. ダウンロード用 URL は1月15日頃に本選参加者にメールで通知する.
    ( VMware Player: http://www.vmware.com/jp/products/player/ )
  • gcc/g++ (GCC) 4.4.5
  • gdb 7.2
  • C++ STL Document (英語)
  • Gnu Emacs
  • Vim
  • その他のディストリビューションに含まれるエディタ
解答方法および解答提出方法 課題の趣旨に合致するプログラムを作成し,解答提出用 Web インタフェースからソースを提出する. 課題によっては,提出した解答に対するフィードバックが与えられる. フィードバックの内容については,1月15日頃に本選参加者にメールで通知する.
採点方法 予選同様,採点用入力データに対する出力の正誤で得点を定める. ただし,予選と異なり実行時の実行時間と使用メモリに制限がある. 制限は問題ごとに異なり,競技時に配布される Overview Sheet に記載される. 競技中に解答提出 Web インタフェースよりソースファイルを提出する. 解答プログラムは,入力を標準入力から読み込み,出力を標準出力に出力し,必ず正常終了すること(必ず 0 を返すこと). 採点プログラムは,Overview Sheet に記載されているコンパイルオプションを用いて解答プログラムをコンパイルし,採点用入力データに対して実行した際,時間やメモリの制限を満たして正常終了し,かつ,出力が正しい場合に,その採点用入力データの配点分の得点を与える.
指定されたファイル以外への
アクセス禁止
提出する解答プログラムは,実行時に,許可されたファイル以外のいかなるファイルも作成(出力)しないこと.
参考資料閲覧の禁止 競技に先立ち,競技に使用するPCにいかなるデータもコピーしないこと. また,競技中は,フロッピーディスクや CD-ROM 等の外部メディアの使用,参考書やノートなどの紙の資料の参照,電卓や電子辞書の使用なども禁止である.

本選FAQ

これまでに実際にあった質問とその回答です. 回答の一部は,今年度に合わせて変更している箇所もあります. 今後,皆さんから質問がありましたら,その質問と回答を追加していきます.

Q1: gccのインラインアセンブリを使ってもよいでしょうか? ソースの一部分とはいえ,アセンブリ言語なので,使用言語の制限にひっかかるかどうか心配です.
A1: インラインアセンブリを使用したとしても失格にはなりません. 実際に使用するかどうかは, 「本選競技実施方法概要」を読み自分の責任で判断してください.
Q2: ネットワークプログラミング関連の問題が出る可能性はありますか?
A2: ネットワークプログラミングは出題されません.
Q3: 言語規定などに関してですが,定められた方法でコンパイルが可能なら,実装方法等は問わないということでよろしいでしょうか? 例えば, C++ を選択した際に,C++ の拡張された部分を一切使わず C 互換で書く,GNU 拡張機能やインラインアセンブリを用いる,などです. また,採点は『本選競技実施方法概要』にある環境で行われるのでしょうか? つまり,例えば64ビット環境では動作しないなど,移植性は無くともかまいませんか?
A3: 採点は,皆さんが本選で使用するPCと同一機種,同一環境で行います.
Q4: 開発環境に関して. man や info を参照してよろしいでしょうか? そして,C の標準ライブラリのドキュメントはインストールされていますか? また,STLのドキュメントを参照する手段は用意されていますでしょうか?
A4: 本委員会が本選競技のために用意した環境に含まれているドキュメントは man や info も含めて利用可能です. C++ STL Document (英語) を用意します.
Q5: 本選競技中,開発を補助するスクリプトを適時作成実行してもかまいませんか? 例えば,さらに高い警告レベルに設定したコンパイルスクリプトを作るなどです.
A5: はい.
Q6: 持ち込みの規定に関する質問ですが,白紙の計算用紙と筆記具の持ち込みは可能でしょうか? 考えを整理するための図を書くために使用したいと考えています.
A6: 計算用紙は本委員会が用意したものを利用してください. 鉛筆やボールペンなどの筆記用具は持参し,持参したものを使用してください.
Q7: 電卓の使用も禁止されていますが,競技時間内に計算するためのプログラムを作成して計算するのはよいでしょうか?
A7: ここでいう「電卓」とは,電子式卓上計算機やそれに類する機械・装置のことです.
Q8:
 (1) どうして本選では参考資料の閲覧・PCへのデータのコピーが許されないのですか?
 (2) プラクティス時に bat ファイルや C++ のソースコードなどのファイルを作成しておき,本選中にそれらを使用することはできますか?
A8:
(1) 日本情報オリンピックは,国際大会である国際情報オリンピック IOI の日本代表選手選考を兼ねています. 選考が進むにつれて徐々に IOI の競技規則・競技環境に近づくよう競技規則・競技環境を定めています. IOI は,このような規則で実施されています.
(2) できません. このような行為を行った場合は失格になります.

個人情報の扱いについて

個人情報の扱いについては,情報オリンピック日本委員会の「個人情報保護方針」をご覧ください.