Вступ
Масив покажчиків являє собою масив Lненульових цілих чисел , де 0 ≤ L[i]+i < len(L)має місце для всіх індексів i(передбачається , що індексація з 0). Ми кажемо, що індекс i вказує на індекс L[i]+i. Масив вказівника - це цикл, якщо індекси утворюють один цикл довжини len(L). Ось кілька прикладів:
[1,2,-1,3]не є вказівним масивом, оскільки3значення не вказує на індекс.[1,2,-1,-3]- це масив вказівника, але не цикл, тому що жоден індекс не вказує на-1.[2,2,-2,-2]є масивом вказівника, але не циклом, тому що індекси утворюють два цикли.[2,2,-1,-3]- це петля.
Вхідні дані
Ваш вхід - це порожній список ненульових цілих чисел, у будь-якому розумному форматі. Він може бути несортованим та / або містити дублікати.
Вихідні дані
Ваш вихід повинен бути циклом, який містить усі цілі числа у списку вхідних даних (і, можливо, інші цілі числа), рахуючи кратність. Вони не повинні відбуватися в тому ж порядку, що і у вводі, і вихід не повинен бути мінімальним у будь-якому сенсі.
Приклад
Для введення [2,-4,2]прийнятним буде вихід [2,2,-1,1,-4].
Правила та оцінка
Ви можете написати повну програму або функцію. Виграє найменший байт, а стандартні лазівки заборонені. Включення в вашу відповідь пару прикладних входів та результатів.
Тестові справи
Вони наведені у форматі input -> some possible output(s).
[1] -> [1,-1] or [1,1,1,-3]
[2] -> [2,-1,-1] or [1,2,-2,-1]
[-2] -> [1,1,-2] or [3,1,2,-2,-4]
[2,-2] -> [2,-1,1,-2] or [2,-1,2,-2,-1]
[2,2,2] -> [2,-1,2,-2,2,-2,-1] or [2,2,2,2,-3,-5]
[2,-4,2] -> [2,2,-1,1,-4] or [2,5,1,1,1,-4,2,-7,-1]
[3,-1,2,-2,-1,-5] -> [2,3,-1,2,-1,-5] or [3,3,-1,-1,2,2,-1,6,1,1,1,1,-12,-5]
[-2,-2,10,-2,-2,-2] -> [10,-1,1,-2,-2,1,-2,-2,1,-2,-2]
[-15,15,-15] -> [15,-1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,-15,-15]
[1,2,3,4,5] -> [1,2,3,-1,4,-1,5,-1,-1,-9,-1,-1]
n = 0, оскільки специфікація говорить " ненульові цілі числа ".