Данная задача является задачей на нахождение наибольшего возможного значения.
Пусть Андрей и Борис вытягивают числа из мешочка по очереди до тех пор, пока он не опустеет. Пусть сумма чисел Андрея в итоге будет равна S_A, а сумма чисел Бориса - S_B.
Мы знаем, что первое число, вытянутое Андреем, равно 12, а Борисом - 160. Значит, сумма чисел Андрея будет равна S_A + 12, а сумма чисел Бориса - S_B + 160.
Давайте разберемся, как влияет наш выбор чисел на итоговую сумму.
Пусть Андрей вытянул число X. Тогда Борис вытянет число 200 - X (так как каждое число от 1 до 200 написано ровно на одной карточке).
То есть, после первых двух ходов суммы чисел обоих участников будут равны:
S_A' = S_A + X + (200 - X) = S_A + 200
S_B' = S_B + (200 - X) + X = S_B + 200
Мы видим, что выбор числа на первом ходу не влияет на разницу сумм чисел Андрея и Бориса. Поэтому мы можем смело рассмотреть ситуацию, где на первом ходу выберем максимально возможное число - 200.
После этого каждый из участников будет вытягивать числа таким образом, чтобы сумма его чисел была максимальной. Для этого им выгодно выбирать самые большие числа, которые остались в мешочке.
После выбора числа на i-ом ходу, оно удаляется из мешочка и остается i-1 чисел. При этом, если на i-й ход из мешочка можно выбрать только числа a_1, a_2, ..., a_n, то для определенности будем считать, что a_1 < a_2 < ... < a_n.
Пусть на i-й ход Андрей выбирает число A_i, а Борис - число B_i. Тогда суммы чисел после i-го хода будут равны:
S_A(i) = S_A(i-1) + A_i
S_B(i) = S_B(i-1) + B_i
Мы хотим найти такое i, чтобы сумма S_A(i) оказалась максимально возможной. Для этого найдем максимальное возможное значение A_i на каждом i-м ходу.
Заметим, что наши числа A_i должны быть максимальными возможными числами, при условии, что каждое следующее число не должно быть меньше предыдущего. Мы не можем выбрать число 1, так как оно является наименьшим возможным числом. Значит, на каждом i-м ходу нам нужно выбирать максимальное число из чисел, которые остались в пуле после i-1-го хода.
Таким образом, наша задача сводится к нахождению максимально возможного значения числа А_i на i-м ходу для каждого i.
Мы уже выбрали число 200 на первом ходу. Теперь нужно выбрать максимальное число из оставшихся (201, 202, ..., 399) на втором ходу. После этого на третьем ходу нужно выбрать максимальное число из оставшихся (400, 401, ..., 599), и так далее.
Таким образом, на каждом i-м ходу мы выбираем число a_i = 199 + i, так как каждое следующее число больше предыдущего.
Теперь мы можем выразить сумму чисел Андрея после i-го хода:
S_A(i) = S_A(i-1) + a_i
= S_A(i-2) + a_{i-1} + a_i
= S_A(2) + a_3 + a_4 + ... + a_i
= S_A(2) + (199 + i) + (199 + (i+1)) + ... + (199 + k)
= S_A(2) + (k - i + 1) * (398 + i) / 2,
где k - это количество ходов, которые успел сделать Андрей. Мы видим, что сумма чисел Андрея S_A(i) линейно зависит от количества ходов k. Значит, чтобы сумму чисел Андрея сделать максимально возможной, нужно выбрать на каждом ходу самое большое возможное число.
Теперь нам нужно понять, на каком ходу k нужно остановиться, чтобы разность сумм S_A(k) и S_B(k) была максимальной.
S_B(k) = S_B + (k - 2) * 200 + 160 = S_B + 360 + (k - 2) * 200,
так как каждый ход Борис выбирает число 200 - Андреев выбор.
Итак, наша задача сводится к максимизации разности s = S_A(k) - S_B(k) при ограничении s >= 0 и выборе такого k, чтобы k было максимально возможным.
s = S_A(k) - S_B(k) = S_A(2) + (k - i + 1) * (398 + i) / 2 - (S_B + 360 + (k - 2) * 200).
Заметим, что S_A(2) = S_A + 200 + 199, так как после первого хода Андрея, сумма чисел на его карточках написана по состоянию на второй ход (сперва он вытянул 200, потом 199).
Теперь мы можем посчитать наибольшую возможную разность s.
s = S_A + 200 + 199 + (k - i + 1) * (398 + i) / 2 - S_B - 360 - (k - 2) * 200
= (S_A - S_B) + (k - i + 1) * (398 + i) / 2 - 161 - (k - 2) * 200,
где (S_A - S_B) - изначальная разность сумм чисел Андрея и Бориса.
Для максимизации разности s нужно максимизировать второе слагаемое:
(k - i + 1) * (398 + i) / 2 - 161 - (k - 2) * 200.
Для этого найдем максимум этой функции по i при ограничении 0 <= i <= k-2.
Как известно, функция квадратична. Используя методы дифференциального исчисления, можно показать, что её максимум достигается при i = k-2.
То есть, чтобы получить наибольшую возможную разность s, нужно не пропускать числа из мешочка на каждом из k-2 ходов. Последнее число k-2-го хода будет максимальным.
Заметим также, что после k-2-го хода наши числа будут (399, 398, ..., 400 - k, 200). А последнее число будет 200 - (k-2) = 202 - k. То есть, наши числа будут (399, 398, ..., 400 - k, 202 - k, ..., 200).
Сумма чисел после k-2-го хода будет:
S_A(k) = S_A(2) + (200 + 201 + ... + (202 - k) + ... + 200)
= S_A(2) + (k - 2 + 1) * (402 + 200 - (k - 2)) / 2
= S_A(2) + 201 * (k - 1).
Аналогично, сумма чисел Бориса после k-2-го хода будет:
S_B(k) = S_B + 160 + 200 * (k - 2).
Итак, разность наших сумм S_A(k) - S_B(k) будет равна:
s = S_A(k) - S_B(k) = S_A(2) + 201 * (k - 1) - S_B - 160 - 200 * (k - 2)
= S_A - S_B + 201 * (k - 1) - 160 - 200 * (k - 2)
= 41 + S_A - S_B + k.
Мы видим, что для всех k разность s будет равна S_A - S_B + k + 41, так как 41 - это число, которое осталось после прохода всех ходов.
Чтобы получить максимальную возможную разность s, нужно выбрать максимальное возможное число k. Мы знаем, что каждое число от 1 до 200 в мешочке написано ровно на одной карточке. Значит, чтобы получить максимально возможное значение k, нужно не пропускать числа из мешочка на каждом ходу.
Таким образом, максимальное значение k будет равно 200.
Итак, чтобы сумма Андрея была максимально возможной, ему нужно не выбрасывать ни одно число из мешочка на каждом h-м ходу, где h = 2, 3, ..., 200. Таким образом, сумма чисел Андрея после 200-го хода будет равна:
S_A(200) = S_A + 200 + 199 + ... + 1 = S_A + (1 + 200) * 200 / 2 = S_A + 201 * 100 = S_A + 20100.
А сумма чисел Бориса после 200-го хода будет:
S_B(200) = S_B + 160 + 200 + 199 + ... + 3 + 2 + 1 = S_B + (1 + 3 + ... + 199 + 200) = S_B + (200/2 + 1) * 100 = S_B + 20100.
Итак, разность сумм с учётом наибольшего возможного значения равна:
s = S_A(200) - S_B(200) = S_A + 20100 - (S_B + 20100) = S_A - S_B.
Мы получили, что наибольшее возможное значение разности сумм равно S_A - S_B, то есть, разности исходных сумм чисел на карточках Андрея и Бориса.
Таким образом, наибольшее возможное значение суммы Андрея будет равно сумме Бориса плюс разность исходных сумм:
S_A(200) = S_B + 12 - 160 = S_B - 148.
Итак, наибольшее возможное значение суммы Андрея будет на 148 больше суммы Бориса.
Ответ: наибольшее возможное число сумма Андрея может быть больше суммы Бориса равно 148.
Проверка:
Пусть Андрей вытягивает числа 12, 200, 399, 398, ..., 253, 252 и Борис - 160, 399, 398, ..., 253, 252.
Сумма чисел Андрея будет равна:
12 + 200 + 399 + 398 + ... + 253 + 252
= 12 + 199 + 200