前提・実現したいこと
表題についてpythonで下記の問題のコードを提出したところ、いくつかWAが出てしまいました。
ABC208_C問題
原因は分かっており、下記のコードの切り捨て除算をする箇所を修正することでACになりました。
(誤)ans = int(K/N) ⇒(正)ans = K//N
(恥ずかしながら、//で切り捨て除算ができることを知らず、ずっとint()を使って来ました)
ここで質問なのですが、そもそも(誤)のパターンは何が問題だったのでしょうか?
除算をする際の数値にあまりにも差がありすぎると、誤差が出てしまうとかそうゆうことなのでしょうか?
どなたかご教授頂けますと幸いです。
発生している問題・エラーメッセージ
4つのパターンでWAになっています。
エラーメッセージ
該当のソースコード
python
1N,K = map(int,input().split()) 2a = list(map(int,input().split())) 3 4human = [[0 for i in range(2)] for j in range(N)] 5 6for i in range(N): 7 human[i][0] = i 8 human[i][1] = a[i] 9 10human.sort(key=lambda x: x[1]) 11 12ans = int(K/N) 13mod = K % N 14 15for i in range(N): 16 human[i][1] = ans 17 18for i in range(mod): 19 human[i][1] += 1 20 21human.sort(key=lambda x: x[0]) 22for i in range(N): 23 print(human[i][1])
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー