AtCoder ABC074C - Sugar Waterを解いているのですが、12個のテストケースのうち非開示の1つだけ通りません。
砂糖水の濃度が最大になるときの水と砂糖の量をそれぞれ求めるというもので、全探索のコードを書きました。
他の方の解答や解説を見ても、間違った方針ではないと思うのですが、どういう条件でWAになっているのかが思いつかないため自分では修正できそうにありません。
どなたか、私のコードの誤りを指摘していただけないでしょうか?
Python
1# ABC074C - Sugar Water 2# input 3a, b, c, d, e, f = list(map(int, input().rstrip().split())) 4A = a * 100 5B = b * 100 6 7# default values 8x, y = (min(a, b) * 100 + min(c, d)), min(c, d) 9dens = y / x 10 11# exhaustive search 12for i in range(f // A + 1): 13 for j in range(((f - A * i) // B) + 1): 14 if i == 0 and j == 0: 15 continue 16 water = i * A + j * B 17 rest = f - water 18 for k in range(rest // c + 1): 19 for l in range((rest - c * k) // d + 1): 20 if k == 0 and l == 0: 21 continue 22 sugar = c * k + d * l 23 total = water + sugar 24 25 if sugar / total > e / (e + 100): # compare to e (the max density) 26 break 27 else: 28 if sugar / total > dens: 29 dens = sugar / total 30 x, y = total, sugar 31print(x, y)
回答1件
あなたの回答
tips
プレビュー