Интернет не удалось. DDoS-атаки сейчас широко распространены. Это зависит от вас, чтобы взять под контроль и восстановить Интернет.
Каждый бот будет контролировать 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
Выше будет означать, что вы хотите увеличить свою силу первого узла, использовать свой второй узел для атаки на четвертый узел, и ваш последний узел передаст свою силу первому узлу (и если никто не атакует его, он станет безопасным узлом ).
После возвращения ваша программа должна выйти.
Табло
Аккумулятор набрал 3240 баллов
классный получил 2370 баллов
Дамбот получил 2262 балла
random_bot получил 1603 балла
smarter_random_bot получил 1319 баллов
устойчивый бот получил 1097 баллов
Контроллер можно найти здесь: https://github.com/nathanmerrill/NetAttack