По почте прийдет... Решение очень элегантное. Если подробно, то длинно и четко... 1) Каждая гирька може быть -m 0 +m, что есть смещеный на -m диапазон 0m 1m 2m и фактически есть проекцией разряда в 3-ичной системе с весом m. 2) У нас 4 гирьки значит 4 разряда с весами m3, m2, m1, m0. Числа у которых веса удовлетворяют условию m (i) = m(i-1)*m покрывают весь диапазон значений 0 до m^разрядов-1. Если вес разряда больше пявляются пробелы, меньше - дубликаты. Можно доказать идукцией, а можно принять как аксиому. Поэтому нам подойдут веса троичной СИ ( ...,27, 9, 3, 1). 3) Посчитаем хватит ли нам значений? 2222 = 2*27+2*9+2*3+2*1 = 81-1=80 4) Вспоминаем, что 2m у нас нет, а есть только -m. Остался только финальный рывок: 2m = 3m -m Т.е. для двоек надо увеоичить след разряд на 1, а в текущем разряде установить -1 5) Дополнительное ограничение уменьшает покрываемый диапазон до 1111 1111 = 1*27+1*9+1*3+1*1 = 40
no subject
Решение очень элегантное. Если подробно, то длинно и четко...
1) Каждая гирька може быть -m 0 +m, что есть смещеный на -m диапазон 0m 1m 2m
и фактически есть проекцией разряда в 3-ичной системе с весом m.
2) У нас 4 гирьки значит 4 разряда с весами m3, m2, m1, m0.
Числа у которых веса удовлетворяют условию m (i) = m(i-1)*m
покрывают весь диапазон значений 0 до m^разрядов-1.
Если вес разряда больше пявляются пробелы, меньше - дубликаты.
Можно доказать идукцией, а можно принять как аксиому.
Поэтому нам подойдут веса троичной СИ ( ...,27, 9, 3, 1).
3) Посчитаем хватит ли нам значений?
2222 = 2*27+2*9+2*3+2*1 = 81-1=80
4) Вспоминаем, что 2m у нас нет, а есть только -m.
Остался только финальный рывок: 2m = 3m -m
Т.е. для двоек надо увеоичить след разряд на 1, а в текущем разряде установить -1
5) Дополнительное ограничение уменьшает покрываемый диапазон до 1111
1111 = 1*27+1*9+1*3+1*1 = 40