Виклик:
Вхід:
Сортований список натуральних чисел.
Вихід:
Кількість цілих чисел, які все ще знаходяться в точно такому ж індексі, після обертання цифр у кожному цілому цілому його кількість індексів уліво та сортування модифікованого списку знову.
Приклад:
Вхід: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Вихід (0-індексація): 6
Вихід (1-індексування):5
Чому?
Індексація на основі 0:
After rotating each: [8,94,73,102,592,276,8227,3338,9217,63784,89487,7887471]
Sorted again: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Input indices: 0 1 2 3 4 5 6 7 8 9 10 11
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Modified indices: 0 2 1 3 5 4 7 6 8 9 10 11
Equal indices: ^ ^ ^ ^ ^ ^
So the output is: 6
Індексація на основі 1:
After rotating each: [8,49,37,021,925,762,2278,3383,2179,37846,94878,8874717]
Sorted again: [8,(0)21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Input indices: 1 2 3 4 5 6 7 8 9 10 11 12
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Modified indices: 1 4 3 2 6 5 9 7 8 10 11 12
Equal indices: ^ ^ ^ ^ ^
So the output is: 5
Правила виклику:
- Гарантовано, що список вхідних даних містить лише додатні цілі числа.
- Список вхідних даних гарантується сортуванням від найнижчого до найвищого.
- Гарантований список містить щонайменше два елементи.
- Як ви бачите вище, дозволено як індексацію на основі 0, так і на 1. Будь ласка, вкажіть у своїй відповіді, яке з двох використаних вами, оскільки результати можуть відповідно відрізнятися!
- Провідні
0
s після обертання ігноруються, що можна побачити на прикладі на основі 1, де ціле число102
стає021
після обертання, а потім трактується як21
. - Цілі цілі гарантуються унікальними у списку вхідних даних і гарантуються, що вони залишаться унікальними після завершення ротацій.
- Зауважимо, що ми дивимось лише позиції обернених цілих чисел у співвідношенні з позиціями введення, а не зі значеннями списку вхідних даних. Щоб уточнити, що я маю на увазі під цим: за допомогою вхідного списку
[1234,3412]
та індексації на основі 1, список стає[2341,1234]
після обертання кожного цілого числа, це кількість індексів, а потім, коли сортується, стає[1234,2341]
. Хоча як вихідний список вводу, так і повернутий список містять ціле число1234
у лідируючій позиції, вони не однакові! Обертався1234
був3412
раніше. Таким чином, 1-індексований вихід для цього вхідного списку є0
, оскільки два цілих числа поміняли свої позиції. - Введення гнучко. Може бути список / потік / масив цілих чисел / рядків / розрядних масивів тощо. Будь ласка, вкажіть, що ви використовували, якщо ви не приймаєте вхідні дані як цілі числа.
Загальні правила:
- Це код-гольф , тому найкоротша відповідь у байтах виграє.
Не дозволяйте мовам коду-гольфу відштовхувати вас від публікації відповідей з не кодовими гольф-мовами. Спробуйте придумати якомога коротшу відповідь на "будь-яку" мову програмування. - Для вашої відповіді застосовуються стандартні правила з правилами вводу / виводу за замовчуванням , тому вам дозволяється використовувати STDIN / STDOUT, функції / метод із відповідними параметрами та повним програмами типу повернення. Твій дзвінок.
- Лазівки за замовчуванням заборонені.
- Якщо можливо, додайте посилання з тестом для вашого коду (тобто TIO ).
- Також настійно рекомендується додавати пояснення до своєї відповіді.
Тестові приклади:
Input: [8, 49, 73, 102, 259, 762, 2782, 3383, 9217, 37846, 89487, 7471788]
0-based output: 6
1-based output: 5
Input: [1234, 3412]
0-based output: 2
1-based output: 0
Input: [2349, 2820, 17499, 21244, 29842, 31857, 46645, 56675, 61643, 61787]
0-based output: 3
1-based output: 0
Input: [4976, 11087, 18732, 22643, 52735]
0-based output: 2
1-based output: 3
Input: [4414, 5866, 7175, 8929, 14048, 16228, 16809, 19166, 24408, 25220, 29333, 44274, 47275, 47518, 53355]
0-based output: 4
1-based output: 4
Input: [11205, 16820, 63494]
0-based output: 1
1-based output: 3
Не соромтеся генерувати більше випадкових тестових випадків за допомогою (або черпати натхнення з) цієї невольхової програми 05AB1E , де вхід є розміром випадкового списку (ПРИМІТКА: вихід цього генератора може не відповідати правилу " Цілі гарантії унікальні в список вхідних даних, і вони гарантовано залишаться унікальними після завершення обертання ", тому майте це на увазі при його використанні.)