タプルのアンパッキング
これまでに見たように、タプルは複数の変数に展開する際に非常に便利です:
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
回の操作を行います。各操作は2つの数字を交換することです。2つのインデックスが与えられ、その位置にある値を互いに入れ替えます。最後に、結果のリストを出力してください。入力の最初の行には、2つの整数
n
とo
が含まれます。これはリストの要素数と操作の回数を表しています。次の行には、スペースで区切られたn
個の整数が含まれます。続くo
行には、各行にスペースで区切られた2つの整数が含まれています。これは交換するインデックスを示しています。プログラムは、スペースで区切られた結果の数字のリストを出力する必要があります。
入力 | 出力 |
5 2
5 6 7 8 9
0 2
1 3 | 7 8 5 6 9 |
解説:
- 最初の状態 -
5 6 7 8 9
- 最初の操作後 -
7 6 5 8 9
- 2回目の操作後 -
7 8 5 6 9
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB