モジュール詳細:残忍カラーフラッシュ

少しだけ難しくなっている事は分かるが……

  • 「残忍カラーフラッシュ」モジュールは異なる色を表す単語を異なる色で順番に表示する。
  • この表示内容(色と単語)は6文字のモールス信号の繰り返しに分解することができる。それぞれのモールス信号は、表示される単語あるいは表示された色に含まれる赤(R)、緑(G)、青(B)の各要素となっている。
  • ダッシュの長さは3つ、ドットの長さは1つ、各信号同士の間の長さは1つ、繰り返しの間の空白の長さは3つである。
  • 受信したモールス信号に対応する文字は三十六進数の数字として解釈する。
  • 単語か色のどちらかに属する数字は、ある関数に対応し、もう片方はその関数の入力となる。
  • RGB要素が共通する各関数を入力に適用すると、3つの出力値が得られる。
  • これらの値は、モジュールの最終値を決定するために使用される。この値は、モジュールを解除するために、どのボタンをいつ押さなければならないかを決定するルールに対応している。
    (このマニュアル上の文章にあるすべての数字は、三十六進数表記である)

もし、単語内の数字に重複する数字がある場合、単語内の数字が関数に対応する。

そうでなければ、色内の数字に重複する数字がある場合、色内の数字が関数に対応する。

そうでなければ、いずれかの単語内の数字がいずれかの色内の数字と等しい場合、色内の数字が入力に対応する。

そうでなければ、三つ以上の受信した数字がA未満の場合。単語内の数字が入力に対応する。

そうでなければ、受信した数字にA未満の数字が存在しない場合、単語内の数字が関数に対応する。

そうでなければ、シリアルナンバーに二つ以上の受信した数字が含まれる場合、色内の数字が関数に対応する。

そうでなければ、シリアルナンバーに受信した数字が含まれない場合、色内の数字が関数に対応する。

そうでない場合、最初を0番目として[爆弾にあるバッテリーの本数]番目の文字を参照(5つより多くバッテリーが存在する場合は折り返す)し、

もし、上記で求めたシリアルナンバーの文字が0-9の表記である場合、単語内の数字が入力に対応する。

そうでない場合、色内の数字が入力に対応する。

各数字は以下の関数コードのうち一つだけから見つけられる。
対応する関数の演算を対応する入力に適用する。

関数
コード
演算
SLIM入力が奇数の場合、倍にする。そうでない場合、半分にする。
15BRORGBの順番(ループ有)で次の入力を結果として使用する。
20DGT入力のモールス信号内のドットとダッシュの合計値を求める。
その入力がJ未満の場合、この値を加算する。そうでない場合、この値を減算する。
34XYZ入力をZから減算する。
6WUF最も小さい入力の値を加算する。
7HPJ入力が3の倍数の場合、3で除算する。そうでない場合、A未満のすべての入力値を合計する。
8CAKE(1にA未満の受信した数字の個数を加えた数)を乗算する。
9QVNRGBの順番(ループ有)で一つ前の入力をZから減算する。

以下の手順の前に、出力値を10で割った余りを取得する。

もし、3つすべての出力値が等しい場合、最終値もその値と等しい。

そうでなければ、3つのうち2つの出力値が等しい場合、最終値は残りの出力値である。

そうでなければ、3つのうち2つの出力値が受信した数字と等しい場合、最終値はその2つの出力値の和を10で割った余りである。

そうでなければ、3つのうち1つの出力値が受信した数字と等しい場合、最終値はその他2つの値の差である。

そうでなければ、出力値の和が22より大きい場合、最終値は赤の出力値である。

そうでなければ、受信した数字の和が4Kより大きい場合、最終値は緑の出力値である。

そうでなければ、受信した数字の和が出力値の和の二倍未満の場合、最終値は青の出力値である。

そうでなければ、シリアルナンバーにいずれかの出力値が含まれる場合、最終値は二番目に大きい出力値である。

そうでなければ、出力値をRGBの順番で並べた際に昇順あるいは降順となる場合、最終値は最大の出力値から最小の出力値を減算した値である。

そうでなければ、最大の出力値が他のすべての単語内の数字より大きい場合、最終値は最小の出力値である。

そうでなければ、最小の色内の数字が他のすべての出力値より大きい場合、最終値は最大の出力値である。

そうでない場合、最終値は入力値を3桁の三十六進数の数字とした時の三十六進数数字根(0からZの値になるまで、三十六進数で各桁同士を合計する)である。

最終値がA以上の場合

...を
押す
タイミング
AYes白が単語として表示されている
BYes単語と色の両方に青の成分が含まれている
CNo残り秒数が7の倍数である
DNo黒が色として表示されている
EYes原色で単語が表示されている、かつ色が二次色である
FNo白が色として表示されている
GYes単語と色の両方に緑の成分が含まれている
HNo単語と色の両方が二次色で表示されている
INo単語と色の両方が原色で表示されている
JYesカウントダウンタイマー上の分数と秒数が両方偶数
KYes黒が単語として表示されている
LNo二次色で単語が表示されている、かつ色が原色である
MYesカウントダウンタイマー上の秒数の十の位がゼロ
...を
押す
タイミング
NNo単語と色が一致している
ONo黒が単語として表示されている
PYes単語と色の両方が原色で表示されている
QNoカウントダウンタイマー上の分数が偶数かつ秒数が奇数
RYes単語と色の両方に赤の成分が含まれている
SYes単語と色の両方が二次色で表示されている
TNo爆弾の開始秒数と残り秒数の差が7の倍数
UYes単語と色の両方に赤の成分が含まれていない
VYes単語と色の両方に緑の成分が含まれていない
WNo単語と色の両方に青の成分が含まれていない
XNoカウントダウンタイマー上の分数と秒数が両方奇数
YYes単語と色が一致している
ZNo白が単語として表示されている

最終値がA未満の場合

カウントダウンタイマーの下一桁が最終値の時に、以下の正しいボタンを押す。

もし、最終値が受信した数字のうちの一つであれば、正しいボタンはYesである。
そうでなければ、シリアルナンバー内の0-9表記の合計が最終値未満の場合、正しいボタンはNoである。
そうでなければ、最終値が開始分数の下一桁と等しい場合、正しいボタンはYesである。
そうでなければ、最終値がポートの個数未満の場合、正しいボタンはNoである。
そうでなければ、モジュールの総数の下一桁が最終値と等しい場合、正しいボタンはYesである。
そうでなければ、最終値がバッテリーの個数未満の場合、正しいボタンはNoである。
そうでなければ、最終値が解除したモジュールと偶奇性が一致する場合、正しいボタンはYesである。
そうでない場合、正しいボタンはNoである。