Вступление
Это продолжение этой проблемы, когда вы играете роль злого близнеца этого человека. Будучи злым, вы не хотите максимизировать свою долю, а быть настолько несправедливым, насколько это возможно, и вы не собираетесь делать это слишком очевидным, поэтому вы придумали следующую схему:
Вы скажете остальным, что хотите быть максимально честными, как ваш брат и сестра, и, таким образом, вы собираетесь разделить целое число на куски одинаковой длины. Таким образом, для каждого целого числа вы будете подбирать нужное количество людей, чтобы разница между самой большой и самой маленькой частью была максимальной.
Например, если вы получили целое число, 6567вы можете оставить его как есть, разделить его на две части 65,67или четыре 6,5,6,7. Это дает вам следующие максимальные различия:
6567 -> max() = 0
65,67 -> max(|65-67|) = 2
6,5,6,7 -> max(|6-5|,|6-5|,|6-6|,|6-7|,|5-6|,|5-7|,|6-7|) = 2
Так как вы только хотите быть злыми вы не предпочитаете 67более 7и , таким образом , вы будете выводить либо 2или 4.
Другое (менее частный случай); учитывая целое число, 121131вы можете разделить его следующим образом:
121131 -> max() = 0
121,131 -> max(|121-131|) = 10
12,11,31 -> max(|12-11|,|12-31|,|11-31|) = 20
1,2,1,1,3,1 -> max(…) = 2
На этот раз есть только одно решение, а именно 3- с тремя людьми разница максимальна.
Вызов
По целому числу определите любой возможный способ быть максимально злым и сообщите количество людей, необходимое для этого.
правила
- Вход всегда будет ≥ 1
- Ввод может быть целым числом, списком цифр или строкой
- Вам не нужно обрабатывать неверные данные
Testcases
Вам нужно только сообщить итоговое количество необходимых людей, возможные разделы приведены только для иллюстрации:
In -> splits (difference) -> Out
1 -> [1] (0) -> 1
10 -> [1,0] (1) -> 2
11 -> [11] or [1,1] (0) -> 1 or 2
12 -> [1,2] (1) -> 2
42 -> [4,2] (2) -> 2
101 -> [1,0,1] (1) -> 3
2222 -> [2222] or [22,22] or [2,2,2,2] (0) -> 1 or 2 or 4
6567 -> [65,67] or [6,5,6,7] (2) -> 2 or 4
123000 -> [123,000] (123) -> 2
123001 -> [123,001] (122) -> 2
121131 -> [12,11,31] (20) -> 3
294884 -> [294,884] (590) -> 2
192884729 -> [192,884,729] (692) -> 3
123456189012 -> [123456,189012] (65556) -> 2
123457117346 -> [1234,5711,7346] (6112) -> 3