アルゴリズムデザインコンテスト2017(ADC2017)ルール説明
概要
- 基本は、ADC2016と同じく「ナンバーリンク(3次元拡張)+解の品質」
(解の品質) = 1/((線長の合計)+(線が曲がった回数))
- 1つ以上の盤面に数字が配置されており、同じ数字の間を線で接続する
- 線は横方向(X)、縦方向(Y)、または隣接する盤面の同じ位置の間(Z)に引くことができる
- 線は分岐してはいけない
※ 「ナンバーリンク」は株式会社ニコリの登録商標です。
詳細
問題フォーマット
- 盤面サイズは [X]X[Y]X[Z] の形で表される
- (X,Y): 盤面平面のマスの数を表す(X:横方向、Y:縦方向)
- Z : 盤面の層の数を表す
- 盤面平面のサイズは最大で72x72 (つまり、X,Y はそれぞれ 1 ≦ X ≦ 72, 1 ≦ Y ≦ 72 を満たす)
- 層数は最大で8 (つまり、Z は 1 ≦ Z ≦ 8 を満たす)
- LINEの定義がある。LINE は 連続する自然数 (1,2,…) で表される
- 各LINEは、LINEを表す数字と、端点を示す複数の位置 (x,y,z) により定義される
(0 ≦ x <X, 0 ≦ y <Y, 1 ≦ z ≦ Z)
- LINEは分岐しない、つまり、端点を示す位置の数は2個とする
- LINEは層をまたいでも良いし、またがなくても良い。つまり、端点を示す2つの位置 (x1,y1,z1), (x2,y2,z2) について、z1 = z2 でも z1 ≠ z2 でも良い
- LINE数に上限なし(コンテストとしては、nlcheck.pyを通ることは事前確認されたい)
回答フォーマット
- 盤面層数分の2次元回答フォーマットを並べたものがADC2017の回答フォーマットとなる
- 2次元回答フォーマット(=盤面の各層の回答フォーマット)は、各マスに数字を当てはめたものとする(2016年度までと同様)
- 隣接する上下両方の盤面と接続されるマスは、盤面平面内ではどの線にも接続されていない孤立点となる
問題フォーマット、回答フォーマットの例
回答ルール
- 問題で指定されたLINEの端点の間を分岐の無い線で接続する
- LINEの端点が存在するマスは、X, Y, Z方向に隣接する最大6個のマスのうち1個と接続される
- LINEを構成する端点以外のマスは、X, Y, Z方向に隣接する最大6個のマスのうち2個と接続される
- 問題で指定されたLINEの端点に接続の無い線を引いてはいけない
- LINEに属さないマスは0を当てはめる
(注) 同じ数字の置かれたマスは接続されているものとみなす。コの字型の迂回がある回答などは、上記のルールに違反する場合があるため注意すること。
その他
- 問題ファイル、回答ファイルは1問1ファイルのテキスト形式。文字コードはASCII、改行コードはCR+LF(Windowsなど)、または、LF(UNIX, Linux, MacOS Xなど)
- 参加1チームあたり最大3問まで問題を自作して当日提供可能
- 問題ファイル、回答ファイルは、運営側が準備する会場の無線LANアクセスポイント(802.11b/g)経由で自動運営システムとの間でやり取りする
- 一度回答を提出した問題を、再度回答するのは不可
- 会場以外の場所(遠隔地)にソルバーを設置して、ネットワーク経由で利用するのは不可
- 事前に作成した自作問題の解をそのまま提出するのは不可。自作の問題も競技時間内にソルバーで解くこと。
- 求解手法を当日ポスターで発表すること
得点の計算方法
- 正解ポイント:問題ごとに、正解のとき+1ポイント
- 品質ポイント:問題ごとに、正解した全チームへ10ポイントを解の品質に応じて比例配分
(解の品質)= 1/((線長の合計)+(線が曲った回数))
… 値が大きいほど良い解
(線長は、マスの中心を線の起点/終点/曲がる点として測る。XYZ方向とも1マスが長さ1) - 出題ボーナスポイント:参加チームが持参した問題を自分で正解したとき、ボーナスで+1ポイント
Copyright (c) 2017 DAシンポジウム実行委員会