Страница 1 из 1

Две армии и мор

Добавлено: 25 окт 2022, 08:26
Albus
Собственно, две задачи :)
1) Пусть есть тип юнитов "веник", со здоровьем 10 и уроном 2 за атаку. Кто сильнее, 10 веников или 5 веников с утроенной атакой? (т.е. =6) При условии, что каждый веник в армии непрерывно наносит урон какому-то другому вражескому венику.
Также при тех же условиях, кто сильнее - 4 vs 2, 6 vs 3, 50 vs 25?
2) Пусть в городе есть N зараженных человек (которые заражены тремя разными штаммами чумы, процентное соотношение по штаммам считаем случайным), вы врач, обходите каждого человека, и можете дать ему один из трех антибиотиков (для каждого штамма нужен свой, если угадаете, вылечите, если нет, то фейл, диагностику делать не можете, только угадывать). Опишите стратегию, которая обеспечивает максимальное мат. ожидание количества вылечившихся

Две армии и мор

Добавлено: 25 окт 2022, 20:09
Ian
Наверное в 1) принцип стратегии не растрачивать зря атакующий потенциал, и добивать так рано как возможно.

Две армии и мор

Добавлено: 25 окт 2022, 20:54
Ian
Albus писал(а):1) Пусть есть тип юнитов "веник", со здоровьем 10 и уроном 2 за атаку. Кто сильнее, 10 веников или 5 веников с утроенной атакой? (т.е. =6) При условии, что каждый веник в армии непрерывно наносит урон какому-то другому вражескому венику.
Программа считает, при оптимальной игре обоих сторон останется у первого 5 юнитов, один из которых полудохлый со здоровьем 4, а вторая сторона будет уничтожена

Две армии и мор

Добавлено: 25 окт 2022, 23:17
Albus
Ian писал(а):Наверное в 1) принцип стратегии не растрачивать зря атакующий потенциал, и добивать так рано как возможно.

Да :)

Две армии и мор

Добавлено: 25 окт 2022, 23:21
zykov
Для первого [math] и [math].
Для второго [math] и [math].

Первый второго уничтожает за [math] секунд.
Второй первого уничтожает за [math] секунд.
Значит первый выигрывает.

Две армии и мор

Добавлено: 25 окт 2022, 23:24
Albus
Ian писал(а):Программа считает, при оптимальной игре обоих сторон останется у первого 5 юнитов, один из которых полудохлый со здоровьем 4, а вторая сторона будет уничтожена

Интересно найти верхнее значение для множителя атаки, когда армии уничтожают друг друга за одинаковое время. При стремлении численности к бесконечности ответ легко находится ;)

Две армии и мор

Добавлено: 25 окт 2022, 23:27
Albus
zykov писал(а):Для первого [math] и [math].
Для второго [math] и [math].

Первый второго уничтожает за [math] секунд.
Второй первого уничтожает за [math] секунд.
Значит первый выигрывает.

Там еще DPS постепенно уменьшается у обоих армий, т.е. так просто нельзя наверное :?:

Две армии и мор

Добавлено: 26 окт 2022, 01:44
zykov
Albus писал(а):Source of the post Там еще DPS постепенно уменьшается у обоих армий
Так у той, что уничтожается быстрее, у неё же и DPS падает быстрее. Так что результат не меняется.

Тут HP одинаковый. А вообще, если меньше юнитов с бОльшим HP (при той же сумме), то выгоднее, т.к. они дольше будут в игре и будут свой дэмидж наносить.

Две армии и мор

Добавлено: 26 окт 2022, 08:33
Albus
zykov писал(а):
Albus писал(а):Source of the post Там еще DPS постепенно уменьшается у обоих армий
Так у той, что уничтожается быстрее, у неё же и DPS падает быстрее. Так что результат не меняется.

Тут HP одинаковый. А вообще, если меньше юнитов с бОльшим HP (при той же сумме), то выгоднее, т.к. они дольше будут в игре и будут свой дэмидж наносить.

А как тогда в случае, есть в одной армии [math] юнита (по [math] и [math]), а в другой один с [math] и [math]?
Тогда по вашему первая уничтожает вторую за [math] сек, а вторая первую за [math] сек, т.е.первая сильнее.
Но (условимся, что урон наносится непрерывно, а не рывками), если посчитать детально, то когда вторая уничтожит одного юнита первой, то у единственного юнита второй останется [math], и когда он добьет последнего юнита первой армии, то у него будет [math], а значит, вторая армия победит :)

Две армии и мор

Добавлено: 26 окт 2022, 09:38
Ian
Albus писал(а):
Ian писал(а):Программа считает, при оптимальной игре обоих сторон останется у первого 5 юнитов, один из которых полудохлый со здоровьем 4, а вторая сторона будет уничтожена

Интересно найти верхнее значение для множителя атаки, когда армии уничтожают друг друга за одинаковое время. При стремлении численности к бесконечности ответ легко находится ;)

В тот раз я считал для дискретного времени, когда встречные удары одновременно. Но для непрерывного даже лучше. Пусть [math] изменения дробных численностей в игре, в которой ничья. Эта траектория идет "с конца", от нуля, прямая вне целочисленной сетки и изламывающаяся на линиях сетки. Тогда известно векторное поле которому она следует
[math] -значки округления вверх.k-отношение DPS. В тех целочисленных точках (наборах численностей), которые выше этой траектории, побеждает второй игрок.
Так дифур же решается, он с разделяющимися переменными. типа так: https://www.wolframalpha.com/input?i=in ... %28x%29*dx

Две армии и мор

Добавлено: 10 янв 2024, 12:02
Albus
А что насчет этой задачи?
Пусть в городе есть N зараженных человек (которые заражены тремя разными штаммами чумы, процентное соотношение по штаммам считаем случайным), вы врач, обходите каждого человека, и можете дать ему один из трех антибиотиков (для каждого штамма нужен свой, если угадаете, вылечите, если нет, то фейл, диагностику делать не можете, только угадывать). Опишите стратегию, которая обеспечивает максимальное мат. ожидание количества вылечившихся