2021 国内予選 特別競技ルール

国内予選における競技ルールを以下に示します.

※ 現在,議論されている特別競技ルールです.実行委員会内の以後の議論で変更の可能性があります.何かお気づきの点がありましたら,お寄せ下さい.

※ 事前準備に関する質問を多数もらいましたので,考え方を示しました.


【履歴】

公開しました

 


コンテストは,Honor system(自主管理制度)で実施します.つまり,監督はいません.選手は全員ルールを遵守してください.ルールのいずれかを守らなかった場合,そのチームは失格とすることがあります.

選手にはコンテストの前にルールを遵守するという誓約書を提出していただきます.詳細は後日競技者に連絡します.

  1. 競技中の部屋
    • 各選手は一人だけしかいない閉ざされた室内で競技しなければなりません.部屋は,選手が占有できれば,選手の自宅でも大学でも構いません.屋外や個室ではないカフェなどの環境での参加は認められません.
    • あらかじめ飲食物を用意するのは構いません.用便のために室外に出ることは認められますが,その際も他者と面と向かって直接話をしてはなりません(”3. 連絡や相談”参照).
    • 今回は選手だけで集まることができる場合でも,そうしてはなりません.各選手は異なる部屋で参加しないといけません.互いに会話等ができなければ,複数のチームメンバーが同じ建物の別々の部屋で参加するのは構いません.これは COVID-19 の感染拡大を直接防止するためだけでなく,感染拡大防止のために選手が集まることが禁止されている大学等のチームが不利になることを防ぐための措置です.
  2. 使用する計算機は 一人 1 台まで
    • 各選手は,コンテストそのもの(コーディング,プログラム実行,コンテストシステムの利用など)のために,1台まで計算機を使用できます.チームの選手が3人とも同時にコーディングしても構いません.
    • AWSなどクラウド計算資源を利用してはいけません.
    • 自チームの選手とのコミュニケーションやネットワークトラブル解消などのためにタブレットやスマホ等,別の計算機を利用するのは構いません.
  3. 連絡や相談
    • 競技中,選手は自チームの選手とのみ,ネットワーク越しや電話を通して,相談できます.選手同士が直接面と向かって話すことは許されません(”1. 競技中の部屋参加場所”参照).
    • コーチとの相談も禁じます. ただし,システムやネットワークのトラブルへの対応法を相談することは許されます.
    • 審判団に連絡する必要が生じた場合,かつ,競技システム上のClarificationの要請もできない状況の場合には,実行委員会へ電話をください.そのための電話番号は事前に連絡します.
  4. 問題開示の禁止
    • 競技終了までは問題を自チームの選手以外に開示することは許されません.
  5. 競技中に参照できる情報
    • 各チームは競技中物理的・電子的リソースを用いることができます.ここでいう物理的リソースは,手書きのメモや印刷物(本,辞書,選手が印刷したものなど)を含みます.電子的リソースは,計算機のローカルディスクにあるすべてのファイル(事前に用意したコードなど)や,インターネット上の多くのリソース(Wikipediaやコード例など)を含みます.
    • インターネット上の自動翻訳サイトの利用は認めません.なぜならサイトによっては,翻訳された内容が公開されるためです.選手はインターネット上にある辞書を利用しても構いません.
  6. ネットワークアクセス
    • 各チームは,コンテストシステムを利用するため(問題文の取得,解答の提出,順位表の確認など)やインターネット上のリソースを参照するためにネットワークをアクセスしても構いません.
    • 選手は,SNSやビデオ会議システム(Zoom, WebEx, Skypeなど)といったソフトウェアを使って自チームのメンバーと連絡をとって構いません.その際,自チーム以外の人が連絡の内容を読めたり,聞こえたりしてはいけません.このため,ブログやフォーラムなど,他人に見えてしまうような手段を使ってはいけません.利用するSNSなどのインターネット上のサービスが,コンテスト終了前に問題や解答などが公開されないことを選手の責任で確認してください.
  7. ネットワークやマシントラブル等
    • 高速かつ安定したネットワーク環境を準備して下さい.競技時間内に選手の責任で生じたネットワークやマシンのトラブル等でコーディングができないなどのトラブルがあっても個別に競技時間を延長することはありません.予備の通信手段(携帯電話機によるテザリングなど)の準備を推奨します.
  8. 競技時間の延長
    • 実行委員会側のシステムトラブル等が生じた場合は,全チームに対して競技時間を延長することがあります.
    • 特定チームだけに不利益になった場合には,そのチームのコンテスト時間だけを延長する可能性もあります.
  9. 使用できるプログラミング言語
    • 競技参加者が使用できるプログラミング言語は C, C++, Java, Kotlin, Python3 のいずれかのみです.
    • 利用するプログラミング言語で標準で提供されている機能,ライブラリは利用して構いません.
    • 開発環境(Eclipse, Visual Studio 等)は使用して構いません.
      プログラム内において他言語によるプログラム(perlなど)を起動しているプログラムは解答とは認められません.

【競技ルール FAQ】

  • Q1.3人一緒に参加する予定です.PCは3人で1台にしなけれなりませんか?
    A1.いいえ.3人一緒だったとしても3台活用してもかまいません.ただし,2人で1台なども認められます.
  • Q2. 3人で連絡をとるのはどうしたらよいでしょうか.
    A2.  会議システム(Zoom, Hangout, Skype等)やSNS等を活用してかまいません.
  • Q3. 3人で連絡をとらなくても競技に参加できてしまいます.それでもいいでしょうか.
    A3. かまいませんが,同じ問題に一緒に Submit するなどすると,ペナルティがかかりますので不利になります.リアルタイムに連絡をとることを推奨します.
  • Q4. 競技ルール 1 において使用できるプログラミング言語を定めていますが,これはチームごとに1つの言語のみを使えるということですか、それとも、問題ごと、提出ごとに異なる言語を使ってもよいのですか?
    A4. 後者です.各チームは、問題ごと,提出ごとに,C, C++, Java, Kotlin, Python3 のいずれかを選んで解答してください.問題ごとにプログラミング言語を変えても構いませんし,ある問題への提出が誤答となった後,別の言語で作りなおして解答を提出しても構いません.ただし,「成績判定ルール」内の「完了の判定・入力データ」にあるように,完了の条件は「同一のプログラムが、まだ解いていない入力データ2つに対し連続で正答を出力することができた」ことであることに注意してください.
  • Q5. 言語についてですが,どの標準規格の使用が認められているかがルールに記載されていないですが,任意の規格が認められているのですか?
    A5. リストにあるプログラミング言語(C, C++, Java, Kotlin, Python3)であれば,バージョンは問いません.
  • Q7. 事前準備として,プロジェクトやコンパイル用のシェル,空のファイルをつくっておいても良いですか?
    A7. いいえ,認められません.事前の電子的な準備は全て認められません.なお,必要な項目を列挙したメモ紙を用意し,本番その紙を見ながらファイルを作成することは認められています.認められます.
  • Q8.Python の threading, C++11のstd::thread などの言語標準機能で使用できるマルチスレッドは使用しても構わないですか?
    A8.はい,認められます.標準機能の利用は問題ありません.
  • Q9.PCの立ち上げも事前の電子的準備に含まれますか
    A9.PCやソフトウェアの起動は問題ありません.ここでの電子的準備とは,事前のライブラリ等の入力を指します.
  • Q10.事前準備はどこまで許されますか? 例えば,ICPC競技用フォルダを作っても良いですか?
    A10. 認められません認められます
  • Q11.競技が開始してから記述したプログラムを、slackなどを通して端末間で共有することは許されますか?
    A11.はい,同じチーム内であれば認められます.
  • Q12.自宅のPCには,競技で禁止されているプログラムがたくさん格納されています.全て削除する必要がありますか?
    A12.削除する必要はありませんが,競技中に閲覧,使用実行しないで下さい.
  • Q13. PCにプリンターがたくさんつながっているのですが,プリンター一台という制限はありますか?
    A13. いいえ,ありません.プリンターの台数制限はありません.
  • Q14. コーチが代理で問題を印刷してもよいでしょうか?
    A14. いいえ,認められません.「8. 問題開示の禁止」に抵触します.
  • Q15. 他のチームが本当に不正をしていないかどうか,不安です.
    A15. 競技の実施にあたっては参加チームを信頼し,ルールの遵守を期待することを基本においています.
    今年度はコロナの影響によって所属校に集まっての参加が難しいチームが少なくないことから,ルールにさまざまな修正を施さざるをえなかったのですが,そのことにさまざまな不安を抱えられていることと思います.監督者不在による公平性への懸念など,様々な観点に関して運営側でも議論を重ねてきました.その結論として,参加チームを信頼する以外に競技を成立させる方法はないと判断し,上記のようにルールを設定いたしました.なお当然ですが,不正が発覚した場合には厳正に対処いたします.
  • Q16. 同時に3人が3台を用いて並列に異なる問題を同時にコーディングしてよいということですか?
    A16. はい,その通りです.
  • Q17. チームメンバーと連絡を取る,具体的にはテキストチャット,通話,ビデオ通話,写真を撮影して共有,といったことを行うために,スマートフォンやタブレット端末を使用した場合,計算機 1 人 1 台のルールに反しますか?
    A17. チームメンバーとの連絡やネットワークの問題が生じたときのみ利用を認めます.ただし,その端末上でプログラムを実行することは認められませんので,ご注意下さい.
  • Q18. コンテスト中にオンラインのリファレンスを参照・ダウンロードすることは許可されますか?
    A18. いいえ,認められません.必要な場合は,事前にダウンロードしておいて下さい.
  • Q19. チケットシステムを使用することは認められますか?
    A19. チームメンバーとの連絡にのみ使用を認めます.
  • Q20. Google Colaboratoryを使用することは認められますか?
    A20. いいえ,オンラインの開発環境は認められません.競技ルール4, 5に抵触します.
  • Q21. 事前に準備したファイルの内容をコピーして貼り付けることは認められますか?
    A21. はい,認められます.
  • Q22.コーディング環境においてライブラリ/スニペット等を自動で挿入する設定は許容されますか?
    A22.そのような環境も許容されます.ただし、挿入される内容が競技中 インターネット越しに動的にダウンロードされたりすることの無いようにご注意下さい.
  • Q23. Google スプレッドシートやGoogle Docsを使用することは認められますか?
    A23. チームメンバーとの連絡にのみ使用を認めます.
  • Q24. Visual Studio Live Shareなどの機能によってプログラムを同期する行為は認められますか?
    A24. チームメンバーとの連絡にのみ使用を認めます.
  • Q25. 提出するプログラムのサイズに上限はありますか?
    A25. ファイルサイズの上限は512KBです.