😎
【Python】paizaラーニング レベルアップ問題集「最大最小」を解いてみる
paizaラーニング レベルアップ問題集「定番アルゴリズムの学習」メニューより、「最大最小」の問題を解いてみました。
学習の主旨からずれないよう、max()
,min()
関数は禁じ手とします。
解答方針として、できるだけ関数やクラスを使うことにしています。
以下、私のコードを問題ごとに紹介します。標準入出力でデータ入力・表示する部分は省略します。
2変数の最大最小
def descendingOrder(a, b):
"""
2つの引数の大きい方の値、小さい方の値をこの順にタプルで返す
"""
if a > b:
return (a, b)
else:
return (b, a)
10変数の最大最小
def maxAndMin(l: list):
"""
リストの最大値、最小値をこの順にタプルで返す
"""
mx = l[0]
mn = l[0]
p = 1
while p < len(l):
if l[p] > mx:
mx = l[p]
if l[p] < mn:
mn = l[p]
p += 1
return (mx, mn)
【FINAL】n変数の最大最小
「10変数の最大最小」と同じ関数で解答できるので省略。
Discussion