paizaラーニングのレベルアップ問題集「Cランクレベルアップメニュー 」からの出典です。
paiza.jp
Pythonによる「Cランクレベルアップメニュー 」辞書 問題集と、それらの提出コードの解答例です。
僕が作成、提出したコードは、以下のとおりです。
・STEP: 1 辞書の基本
/* Pythonによる「Cランクレベルアップメニュー 」辞書 問題集 STEP: 1 辞書の基本 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ # coding: utf-8 n = int(input()) lis = [] for i in range(n): tempo = input().strip().split() lis.append(tempo) s = input() for i in range(n): if s in lis[i]: print(lis[i][1])
・STEP: 2 辞書のデータ更新
/* Pythonによる「Cランクレベルアップメニュー 」辞書 問題集 STEP: 2 辞書のデータ更新 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ # coding: utf-8 n = int(input()) lis = [] for i in range(n): tempo = [] s = input() tempo.append(s) tempo.append(int(0)) lis.append(tempo) m = int(input()) for i in range(m): foo, bar = input().strip().split() for j in range(n): if foo in lis[j]: lis[j][1] = lis[j][1] + int(bar) ans = input() for i in range(n): if ans in lis[i]: print(lis[i][1])
・STEP: 3 辞書データの順序
/* Pythonによる「Cランクレベルアップメニュー 」辞書 問題集 STEP: 3 辞書データの順序 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ # coding: utf-8 n = int(input()) lis = [] for i in range(n): tempo = [] s = input() tempo.append(s) tempo.append(int(0)) lis.append(tempo) m = int(input()) for i in range(m): foo, bar = input().strip().split() for j in range(n): if foo in lis[j]: lis[j][1] = lis[j][1] + int(bar) lis.sort() for i in range(n): print(lis[i][1])
・FINAL問題: 辞書
/* Pythonによる「Cランクレベルアップメニュー 」辞書 問題集 FINAL問題: 辞書 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ p, q, r = map(int, input().split()) lis = [] for i in range(p): tempo = [] agroup, bgroup = map(int, input().split()) tempo.append(agroup) tempo.append(bgroup) lis.append(tempo) for i in range(q): bgroup, cgroup = map(int, input().split()) for j in range(p): if bgroup == lis[j][1]: lis[j].append(cgroup) lis.sort() for i in range(p): print(str(lis[i][0]) + " " + str(lis[i][2]))
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。