電気電子工学実験 ~Hit&Blow~ 担当教官:所 哲郎 1班 石原直幸 小河原耕太 重村亮臣 古田彰吾 森貴寛 アルゴリズム あらかじめ配列にランダムで用意 ↓ 配列の先頭にある数字を抽出 ↓ 解答 ↓ HitとBlowが返ってくる 返答と解答を比較 ↓ 返答と一致する最初の数を抽出 ↓ 次の解答とする ↓ 4Hit 0Blowが返ってきたら終了 判定の高速化 0123,0124,0125,0126,0127,0128,0129, 0132,0134,0135,0136,0137,0138,0139, 0142,0143,0145,0146,0147,0148,0149, 0152,0153,0154,0156,0157,0158,0159, : 9870,9871,9872,9873,9874,9875,9876, 例えば、最初に 0123 と予想し 2H0B と いう答えが返ってきた場合、 01・・, 0・2・, 0・・3, ・12・, ・1・3, ・・23, 以外の答えはなくなり、・の部分には0123 の数字は入らないので 0123,0124,0125,0126,0127,0128,0129, 0132,0134,0135,0136,0137,0138,0139, 0142,0143,0145,0146,0147,0148,0149, 0152,0153,0154,0156,0157,0158,0159, : 9870,9871,9872,9873,9874,9875,9876, のようになる 0123,0124,0125,0126,0127,0128,0129, 0132,0134,0135,0136,0137,0138,0139, 0142,0143,0145,0146,0147,0148,0149, 0152,0153,0154,0156,0157,0158,0159, : 9870,9871,9872,9873,9874,9875,9876, 0145を答えとして出力 データ形式について 比較対照の数 i 0 1 2 3 X[i] 3 8 2 6 という形で配列だと 比較回数が多くなる 5 9 6 3 i 0 1 2 3 X[i] 3 8 2 6 i 0 1 2 3 4 5 6 7 8 9 X[i] 0 0 3 1 0 0 4 0 2 0 ① ④ ③ ② 4回の比較で済む 5 9 6 3 数字の絞込み(1回目) 0Hit 0Blow 0Hit 1Blow 0Hit 2Blow 0Hit 3Blow 0Hit 4Blow 360 1440 1260 264 9 1Hit 0Blow 1Hit 1Blow 1Hit 2Blow 1Hit 3Blow 2Hit 0Blow 480 720 216 8 180 2Hit 1Blow 2Hit 2Blow 3Hit 0Blow 4Hit 0Blow 72 平均 360 6 24 1 数字の絞込み(グラフィック表現) 回を重ねる毎に、候補が減っていく様子を 視覚的に表現する ↓ 数字で表示 ↓ 画像で表示! 数字の絞込み(グラフィックで表現) 例)残り候補 1260通り 「白」のドット ⇒残り候補 「黒」のドット ⇒除外した 候補 数字の絞込み(グラフィックで表現) 数字の絞込み(グラフィックで表現) 数字の絞込み(グラフィックで表現) 数字の絞込み(グラフィックで表現) 数字の絞込み(グラフィックで表現) 数字の絞込み(グラフィックで表現) まとめ 処理速度の高速化を優先したため、実 効回数は多い 実行過程を視覚的に表現することがで きた グループで作業を分担し協力してできた
© Copyright 2024 ExpyDoc