【ABC151 B】「Achieve the Goal」を解く【Python3】

abc151b

「AtCoder」解説一覧へ

N科目のテストを受けた高橋君が、平均点をM点以上にするために最後のテストで何点を取る必要があるのかを答える問題です。

各テストはK点満点です。

提出
n, k, m = map(int, input().split())
a = list(map(int, input().split()))

sum_a = sum(a)
ans = (m * n) - sum_a

if ans > k:
    ans = -1
elif ans < 0:
    ans = 0

print(ans)

N,K,Mをそれぞれ整数で受け取り、これまでのテストの点数を Aiのリストで受け取ります。

平均点をM点以上にするには、合計点が「M×N」以上でなくてはなりません。

そこから、これまでのテストの合計点(sum_a = sum(a))を引いたものが答えになります。

ただ、各テストはK点満点ですので、「ans」がK以上の場合は達成不可となり「-1」、0未満の場合はマイナス点というのはないので、0点に修正します。

【ABC151】解説記事リスト

「AtCoder」解説一覧に戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です