Вступ
Це продовження цього виклику, коли ви берете на себе роль злого близнюка цієї людини. Будучи злим, ви не хочете максимізувати свою частку, а скоріше бути максимально несправедливим, і ви не збираєтесь робити це занадто очевидним, тому ви створили таку схему:
Ви збираєтесь сказати іншим, що ви хочете бути максимально справедливими, як ваш брат та сестра, і, таким чином, ви збираєтеся розділити ціле число на шматки однакової довжини. Тож для кожного цілого числа вам підійде потрібна кількість людей, така що різниця між найбільшою та найменшою частиною є максимальною.
Наприклад, якщо вам дано ціле число, 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
- Введенням може бути ціле число, список цифр або рядок
- Вам не доведеться обробляти недійсні введення
Тестові шафи
Вам потрібно лише повідомити про необхідну кількість людей, можливі розділи - лише для ілюстрації:
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