AtCoder ~ Coins

開発

問題

方針

ある金額Xにするためのコインの組み合わせ数を導き出す問題です。

与えられた500円、100円、50円の枚数を元にして組み合わせを総当たりしてXに一致するものを数えていけば解けそうです。

回答例

# 入力値を取得する
a, b, c, x = [int(input()) for i in range(4)]

# 求めたい金額xと一致する組み合わせを総当たりで探す
isMached = [500 * num500 + 100 * num100 + 50 * num50 == x
    for num500 in range(a + 1)
    for num100 in range(b + 1)
    for num50  in range(c + 1)]

# 一致した数を出力する
print(sum(isMached))

入力値を得る部分はAtCoderでは意味ないが、CLIで実行して実際に入力させるプログラムであればちゃんと文言を表示させた方がよさそう。

# 入力値を取得する
inputItems =[
    "500円の枚数: ",
    "100円の枚数: ",
    "50円の枚数: ",
    "合計金額: "]
a, b, c, x = [int(input(item)) for item in inputItems]

コメント

タイトルとURLをコピーしました