Автор | Сообщение |
|
Отправлено: 05.06.23 20:52. Заголовок: Задача 6417 неправильный ответ
Ответ на сайте: 112 Правильный ответ: 111 Строка, с которой можно прийти к 111: 0111121111211121211121112212111211111211112111211211121111222112212112112121211111211211212122111211111121221111111111111122212122212211111112212112111121211111120
|
|
|
Ответов - 3
[только новые]
|
|
|
| Администратор
|
Сообщение: 4029
|
|
Отправлено: 15.06.23 15:13. Заголовок: Спасибо, ответ и реш..
Спасибо, ответ и решение исправлены.
|
|
|
|
Отправлено: 13.11.23 17:16. Заголовок: да, но как это доказ..
да, но как это доказать? у меня получилось, что если я случайным образом массив перемешал - тогда 111. Но хочется какое-то математическое или логическое доказательство
|
|
|
|
Отправлено: 06.01.24 15:38. Заголовок: Сумма цифр строки пр..
Сумма цифр строки при всех ее преобразованиях , кроме последнего (010-->00), не меняется. Последнее преобразование может быть сделано максимум 1 раз, т.к. появится комбинация 00. Изначально сумма цифр не менее 50*2+100+1 = 201. Эта сумма может только уменьшиться на 1. Первое простое число, большее 200 - это 211. Пример строки в коде (c='0'+'2'*49+'1'*111+'20) дает на выходе строку с такой суммой цифр. Значит, единиц было минимум 111. c='0'+'2'*49+'1'*111+'20' while '00' not in c: c=c.replace('02','101',1) c = c.replace('11', '2', 1) c = c.replace('012', '30', 1) c = c.replace('010', '00', 1) print(sum(int(d) for d in c))
|
|
|
|