前提・実現したいこと
競技プログラミングの勉強中です。
pythonのlistのappendが多重リストに対して、よくわからない動作をしたので質問させていただきます。
期待していた実行結果を得るためにはどのようにすれば良いか、またなぜこのような動作をするのかについても教えていただけると幸いです。
発生している問題・エラーメッセージ
期待していた実行結果
[[2], [1, 3, 4], [2, 4], [3, 2]]
実際の実行結果
[[1, 0, 2, 1, 3, 2, 1, 3], [1, 0, 2, 1, 3, 2, 1, 3], [1, 0, 2, 1, 3, 2, 1, 3], [1, 0, 2, 1, 3, 2, 1, 3]]
該当のソースコード
入力
4 4 1 2 2 3 3 4 4 2
ソースコード
python
1n, m = map(int, input().split()) 2graph = [[]] * n 3for i in range(m): 4 temp = list(map(int, input().split())) 5 graph[temp[0] - 1].append(temp[1] - 1) 6 graph[temp[1] - 1].append(temp[0] - 1) 7print(graph)
試したこと
append()やlistについて調べてみたがよくわからなかった
補足情報(FW/ツールのバージョンなど)
Python 3.7.6
まずこのコードで何がしたいのかを書きましょう。
回答1件
あなたの回答
tips
プレビュー