Іноді, коли мені дуже нудно, я люблю брати суму масиву невід’ємних цілих чисел. Я беру лише суму масивів довжин, які є потужністю дві. На жаль, я часто роблю помилки. На щастя, я стежу за своєю роботою, коли йду далі таким чином:
Я додаю пари сусідніх чисел, поки не залишиться лише один. Наприклад:
6 + 18 + 9 + 6 + 6 + 3 + 8 + 10
= 24 + 15 + 9 + 18
= 39 + 27
= 66
Ви завдання - визначити, чи я десь помилився. Ви можете або отримати вхід, переданий вашій функції, або прочитати зі стандартного дюйма. Вихід можна надрукувати або повернути.
Введення: масив / список / тощо. невід’ємних цілих чисел, а можливо і довжини цього масиву, якщо цього вимагає ваша мова. У цьому масиві будуть всі цифри, прочитані зліва направо, потім зверху вниз. Наприклад, масив вище стане:
[[6, 18, 9, 6, 6, 3, 8, 10], [24, 15, 9, 18], [39, 27], [66]]
або
[6, 18, 9, 6, 6, 3, 8, 10, 24, 15, 9, 18, 39, 27, 66]
якщо ви віддаєте перевагу.
Вихід: один логічний сигнал, який відображає, чи була зроблена помилка чи ні. Булева може бути представлена за допомогою будь-якого відображення за умови, що всі входи, де допущена помилка, повертають / друкують ідентичний результат, а всі введення, які не містять помилок, повертають / друкують ідентичний результат. Це само собою зрозуміло, але ці два виходи не можуть бути однаковими.
Деякі приклади правильних підсумків:
6
5+6
=11
3 + 2 + 4 + 5
= 5 + 9
= 14
[0, 1, 2, 3, 1, 5, 6]
[[1, 2, 4, 8], [3, 12], [15]]
Деякі приклади неправильного підсумовування:
5+4
=8
4 + 4 + 4 + 4
= 9 + 7
= 16
[[1, 2, 3, 4], [7, 3], [10]]
[3, 4, 5, 6, 7, 8, 9]
Майте на увазі, що я можу помилятися і все-таки отримую правильну відповідь. Якщо я помиляюся, це ніколи не призведе до додаткового числа або відсутнього числа в остаточному масиві, а лише неправильного числа.
Стандартні лазівки заборонені. Найкоротша відповідь у кожній мові - переможець. Старша відповідь виграє у разі нічиєї. Я залишаю за собою право вирішувати, що таке "однакова мова", але я скажу, що заздалегідь точку не можна заробити і в Python 2, і в Python 3.
[0,1,2,3,1,5,6]
недійсний, оскільки "Введення: масив / список / і т.д. позитивних чисел".