※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 24609번 문제인 Overdraft이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/24609 

 

24609번: Overdraft

Banks often charge overdraft fees if you attempt to withdraw more money from your account than is available in your current balance. Given a sequence of deposits and withdrawals (and assuming each deposit and withdrawal is immediately reflected in your bal

www.acmicpc.net

원래 통장에 0원이 들어있었다고 생각하고 주어진 입금과 인출을 시뮬레이션해보자. 이 때, 가장 0에서 많이 떨어진 음의 값을 구하자.

 

위에서 구한 값만큼의 금액이 통장에 초기에 있었다면 overdraft는 일어나지 않으므로 그만큼의 돈을 답으로 출력하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	int mn = 0;
	int cur = 0;
	int N; cin >> N;
	while (N--) {
		int x; cin >> x;
		cur += x;
		mn = min(mn, cur);
	}

	cout << -mn;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 12755 // C++] 수면 장애  (0) 2022.08.07
[BOJ 14433 // C++] 한조 대기 중  (0) 2022.08.07
[BOJ 15509 // C++] Xayahh-Rakann at Moloco (Hard)  (0) 2022.08.07
[BOJ 6139 // C++] Speed Reading  (0) 2022.08.07
[BOJ 6136 // C++] Milking Time  (0) 2022.08.07

+ Recent posts