ABC010-B - 花占い を解く
ABC010-B - 花占い
これまた問題文が長いので出力例でも見るか
…
(よくわからなかった)
問題文読むか仕方ない…
①「好き」「嫌い」「好き」…
②「好き」「嫌い」「大好き」「好き」…
上記2パターンのどちらでも「嫌い」にならないように
花びらの数を減らしておく、という問題らしい
こういう問題は適当にシミュレーションしてみて
法則性を見つけるに限る
花びらが
1枚なら必ず「好き」になる。これはOK
2枚なら「嫌い」になるので1枚減らす必要がある
3枚なら「好き」or「大好き」なのでOK
4枚は ① のパターンで「嫌い」になる。1枚減らして3枚にする…
5枚は ② のパターンで「嫌い」になる。2枚減らして3枚にする…
…ん〜 キリがないな
1枚と3枚がセーフだったから5枚もイケるのか?と思ったらダメだし…
法則性がよくわからない
…ん?
>
なんだ
花びらの枚数は1〜9枚なのか
この程度なら if文ゴリゴリでいけるじゃん
えーと、5枚までは上に書いた通りで…
6枚は ① のパターンで「嫌い」になる。3枚減らして3枚にする…
7枚なら必ず「好き」なのでOK
8枚は必ず「嫌い」になる。1枚減らして7枚にする…
9枚なら「好き」or「大好き」なのでOK
以上をコードに落とし込むと…
提出したコード
# 入力 n=int(input()) l=list(map(int,input().split())) # 毟る数をカウントする変数 c=0 # 各花について、毟る数をカウント for x in l: if x==2: c+=1 elif x==4: c+=1 elif x==5: c+=2 elif x==6: c+=3 elif x==8: c+=1 # 毟った数を出力 print(c)