Распаковка кортежей

Как мы уже видели, кортежи очень полезны при их распаковке на несколько переменных:

person = ('Mary', 20, 180)
name, age, height = person
print(name)    # Mary
print(age)     # 20
print(height)  # 180

Это очень удобно при обмене значениями переменных:

n1 = 'Anna'
n2 = 'Mary'
n1, n2 = n2, n1
print(n1)   # Mary
print(n2)   # Anna

Задача

Дан список из n чисел, и вам нужно выполнить над ним o операций. Каждая операция представляет собой обмен двух чисел. По заданным двум индексам, значения на этих позициях нужно поменять местами. В конце требуется вывести получившийся список.

Первая строка входных данных содержит два целых числа n и o — количество элементов в списке и количество операций. Следующая строка содержит n целых чисел, разделенных пробелом. Далее следуют o строк, каждая из которых содержит два целых числа, разделенных пробелом — индексы, которые нужно обменять.

Программа должна вывести итоговый список чисел, разделенных пробелом.

Ввод

Вывод

5 2 5 6 7 8 9 0 2 1 3

7 8 5 6 9

Объяснение:

  1. Изначально — 5 6 7 8 9

  2. После первой операции — 7 6 5 8 9

  3. После второй — 7 8 5 6 9

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue