インターネットが失敗しました。現在、DDoS攻撃はramp延し、広まっています。インターネットを制御し、修復するのはあなた次第です。
各ボットは、このネットワーク内の20のノードを制御します。すべてのノードはアクティブまたは安全であり、所有者を持ち、2から始まる強度を持ちます。すべてのアクティブノードは他のすべてのアクティブノードに接続されます。
ターンごとに、すべてのアクティブノードとその強さのリストを受け取ります。所有するアクティブノードごとに、次のいずれかを実行します。
- 全体の強度を転送するアクティブノードを指定するか、または
- 強度を保存して向上させる
その後、次のことが順番に発生します。
- 強度を保存することを選択したノードは、強度を1増加させます。
- 強度を転送することを選択したすべてのノードは、強度全体を新しいノードに同時に転送します。
- ノードが敵ノードから強さを転送された場合、攻撃が続きます。敵の所有者が元の所有者(および他のすべての攻撃者)よりも多くの力をまとめて移した場合、その敵は新しい所有者になります。そのノードの強度は、攻撃者の強度になります。強さが同点の場合、所有者はランダムに選択されます。
- 強度なしで残されたすべてのノードは安全と見なされ、所有者に1ポイントを与えます。
100ターンの100ゲーム後、すべてのゲームで最も安全なノードを持つ所有者が勝ちます。編集:2000から100ターンに変更しました。最後の1900ターンは役に立たなかったので
IO
次のようなアクティブノードのリストが(コマンドライン引数を介して)渡されます。
F20 F4 E7 E2 E20 F2
F
ノードが味方ノードであるE
ことを示し、ノードが敵であることを示します。
フレンドリノードごとに、次のようなアクションを(STDOUT経由で)返す必要があります。
0,0 1,3 5,0
上記は、最初のノードの強度を増やし、2番目のノードを使用して4番目のノードを攻撃し、最後のノードがその強度を最初のノードに転送することを意味します(誰も攻撃しない場合、それは安全なノードになります)。
戻った後、プログラムは終了するはずです。
スコアボード
アキュムレーターは3240ポイントを獲得しました
上品な2370ポイントを得た
ダンボットは2262ポイントを獲得しました
random_botは1603ポイントを獲得しました
smarter_random_botは1319ポイントを獲得しました
steady_botは1097ポイントを獲得しました
コントローラーはここで見つけることができます:https : //github.com/nathanmerrill/NetAttack