[문제설명]
공원에서 길을 걷는데 n+1개의 벤치가 있고 m단위 만큼의 에너지가 있다.
1m 걷는데 1단위의 에너지를 잃는다.
각 벤치 사이 거리가 정수로 n개만큼 주어진다.
벤치에서는 휴식을 취할 수 있다. 휴식을 취하면 원하는 에너지만큼 회복할 수 있다.
처음에 테이스 케이스가 주어진다. 테스트 케이스의 첫번째 줄은 벤치 사이의 거리가 몇개나 있는지(n+1 = 벤치 수), 출발 시 가지고 있는 에너지량(m)을 입력받는다. 테스트 케이스의 두번째 줄은 벤치 사이의 거리를 입력받는다.
각 테스트 케이스의 회복해야할 에너지의 최소량을 출력해야 한다.
문제를 해결하기 위해서 가장 끝 벤치까지 가는데 필요한 총에너지에서 현재 가지고 있는 에너지를 빼주면 된다. 첫번째 벤치에서 미리 에너지를 모두 모은다음에 출발한다는 느낌으로 생각하면 쉽다.
# 테스트 케이스
t = int(input())
for _ in range(t):
n, m = map(int, input().split())
a = list(map(int, input().split()))
# 출발지점에서 미리 회복할 에너지를 계산한다
energy = sum(a) - m
# 회복할 필요가 없으면 0을 출력한다
if energy <=0:
energy = 0
print(energy)
'코드포스 - Codeforces' 카테고리의 다른 글
Codeforces Round #804 (Div. 2) A. The Third Three Number Problem (0) | 2022.07.11 |
---|---|
Codeforces Round #801 (Div. 2) A. Subrectangle Guess (0) | 2022.06.20 |
Codeforces Round #784 (Div. 4) A. Division? (0) | 2022.04.29 |
코드포스 (Codeforces Round #765(Div.2)) A. Ancient Civilization (0) | 2022.01.19 |
코드포스 (Codeforces Round #764 (Div. 3)) A. Plus One on the Subset (0) | 2022.01.18 |
댓글