Тема: Допоможіть з завданням будь-ласка
Зеник отримав Марсiанську перестановку p iз чисел вiд 1 до n у подарунок вiд Iлони. Чи-
сло k називається щасливим, якщо Зеник може посортувати отриману перестановку виконавши
довiльну кiлькiсть раз таку операцiю: вибрати i та помiняти мiсцями pi та pi+k.
Допоможiть Зенику визначити усi натуральнi числа, якi є щасливими.
Вхiднi данi:
У першому рядку задано одне цiле число n - розмiр перестановки.
У другому рядку задано n цiлих чисел pi -перестановка.
Вихiднi данi:
У першому рядку виведiть одне цiле число m - кiлькiсть щасливих чисел.
У другому рядку виведiть m цiлих чисел - щасливi числа у порядку зростання.
Обмеження
2 ≤ n ≤105,
1 ≤ pi ≤n,
iснує такий iндекс i, що pi 6= i,
для 60% тестiв виконується додаткове обмеження: n ≤2000.
Приклади:
Вхiднi данi: Вихідні дані:
3 2
3 2 1 1 2
7 1
7 5 3 6 2 4 1 1
Ось моя спроба:
import random
n = int(input())
p = input()
pl = p.split()
pl = [int(item) for item in pl]
x = 0
for i in range(n):
if pl[i]:
pl[i] = pl[i+random.randint(1,n)]
x += 1
break
print(pl[i])