AtCoder ABC 105 B – Cakes and Donuts Python解説

スポンサーリンク

Cakes and Donuts

ABC 洋菓子店では, 1 個 4 ドルのケーキと 1 個 7 ドルのドーナツが売られている.
このとき, 合計金額が N ドルとなる買い方はあるか, 判定せよ. ただし, 同じ商品を二個以上買っても良く, 買わない商品があっても良いものとする.

AtCoder Beginner Contest 「Cakes and Donuts」

与えられるNの範囲が1以上100以下と狭いため、4ドルのケーキ、7ドルのドーナツの組み合わせをすべて見ていきたいと思います。

n = int(input())

cnt = 0
flag = False

for i in range(0, 100, 4):
    for j in range(0, 100, 7):
        cnt = i + j
        if cnt == n:
            flag = True
            break
            
print("Yes" if flag else "No")

2重ループですべての組み合わせを見ていきます。ケーキの値段は4ドルから変わらないので、range関数は0から101まで4ずつ、同じくドーナツも0から101まで7ずつ出力します。あとはこの2つを足して、Nと一致するかを見てあげれば大丈夫です。

AtCoderB問題

Posted by cheese