paizaラーニングのレベルアップ問題集「Bランクレベルアップセット」からの出典です。
paiza.jp
Pythonによる「文字と整数の組のソート2」問題集と、それらの提出コードの解答例です。
僕が作成、提出したコードは、以下のとおりです。
・STEP: 1 インクリメント
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 1 インクリメント https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 n = int(input()) print(n+1)
・STEP: 2 重複の判定
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 2 重複の判定 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 lis1 = ["HND", "NRT", "KIX", "NGO", "NGO"] lis2 = set(lis1) if len(lis1) == len(lis2): print("false") else: print("true")
・STEP: 3 配列(リスト)の重複カウント
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 3 配列(リスト)の重複カウント https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 lis1 = ["HND", "NRT", "KIX", "NGO", "NGO", "NGO", "NGO", "NGO"] lis2 = set(lis1) print(len(lis1) - len(lis2) + 1)
・STEP: 4 配列のソート
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 4 配列のソート https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 lis = [1, 3, 5, 6, 3, 2, 5, 23, 2] lis.sort() for i in lis: print(i)
・STEP: 5 数字のみの出力
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 5 数字のみの出力 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 n = int(input()) for i in range(n): a,b = input().split() print(b)
・STEP: 6 昇順ソート出力
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 STEP: 6 昇順ソート出力 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 n = int(input()) lis = list(map(int, input().split())) lis.sort() for i in lis: print(i)
・FINAL問題: 文字と整数の組のソート2
''' Pythonによる「Bランクレベルアップメニュー」問題集: 文字と整数の組のソート2 FINAL問題: 文字と整数の組のソート2 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com ''' # coding: utf-8 n = int(input()) dic = {} for i in range(n): foo, bar = input().split() if foo in dic: dic[foo] = dic.get(foo) + int(bar) else: dic[foo] = int(bar) lis = [] for k, v in dic.items(): tempo = [] tempo.append(k) tempo.append(v) lis.append(tempo) lis.sort(key=lambda x: x[1], reverse = True) for i in range(len(lis)): print(lis[i][0], lis[i][1])
配列(リスト)、連想配列(辞書)、ソートなどについて理解を深める問題です。
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。