Skip to content

giver_guide

Alingof edited this page Dec 19, 2023 · 8 revisions

作問者ガイド

準備中……(12.19 随時更新予定)

このページはJuggernautのgiver(出題者)向けチュートリアルです.

Juggernautの作問では主に3つのことをします.

  • ブレッドボード1枚に回路を組む.
  • ESP32に書き込むプログラムを作成する.
  • 問題文を作成する.

装置の構成

Juggrnautで使用する装置は下図のような構成になっています.

主にESP32や7セグLED,ボタン,ブザーなどがついた“制御部”(プリント基板で構成されている部分)とgiver(出題者)が問題を作る“競技部”(1枚のブレッドボード)に分かれています. 出題者も回答者も触ることができるのは,この“競技部”だけです.

今回の例ですと“競技部”であるブレッドボードからはGND線と赤いワイヤ,青いワイヤだけが伸びています. このうちsolver(挑戦者)が触ることができるのはGND線を除いた赤と青のワイヤだけです.

問題を決める

まずはアイデアを出すところからです.
コンセプトを決めうちしたり,面白そうなセンサがあればそれを軸に考えたりすると良いでしょう.
ワイヤを切ったりボタンを押したり傾けたり振ったり暗くしたり温めたり……使う部品や構成を工夫すればかなり自由が効くはずです.

次に設定時間から難易度を考えてそこから部品の数やプログラムの複雑さを決めます. 単にスイッチ4つを使った問題でも配線を工夫すればかなり難しい問題になるでしょう.

作問に関するレギュレーションを公式から抜粋していくつか紹介しておきます.

  • giver(出題者)は装置を装置の制限時間の15%以内の時間で一度解除し動作を確認しなければならない(15%ルール).
    • 装置の制限時間が10分なら,giverは90秒以内に解除状態に持っていく必要があります.
    • 答えを知っている人なら確実に短時間で解ける問題にするため.考える時間も操作する時間もたくさん必要な問題を防ぐため.
  • 解除条件にランダムな要素を入れる
    • プログラムで乱数を使って偶然の要素を入れるのは禁止.
  • 決められた数以上の部品・ワイヤを使用する
    • 今回は特に指定はありませんが,規制をかける大会も面白いと思います.
  • 部品や配線の確認が困難になるような妨害行為
    • パテで埋めるなどの物理的な妨害は禁止です.
  • 極端にプログラムを長くする行為
    • プログラムの難読化の方面で難易度を上げるのは歓迎ですが,極端に長かったり道筋が不透明で難易度が滅茶苦茶なものは規制の対象になります.
  • 任意のタイミングでないと解けない問題
    • 内部の状態によらずn秒目でしか解けないという問題は禁止です.
    • もちろんすべてのflagを満たさないと解けないといったものはこの規制には当たりません.

レギュレーションに合致してそうなことを確認したら回路を組んでいきましょう.

Clone this wiki locally