-
[BOJ 5585, C++] 거스름돈알고리즘/BOJ 2021. 7. 26. 17:09반응형
https://www.acmicpc.net/problem/5585
풀이
언제나 거스름돈의 개수가 가장 적게 줘야하므로 가장 큰 단위부터 내림차순으로 거스름돈을 주면 된다.
거스름돈의 개수는 몫으로 거스름돈을 뺀 나머지는 나머지로 구할 수 있다.
코드
12345678910111213141516171819202122#include <iostream>#include <cstring>using namespace std;using ll = long long;int main() {ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int n, ans = 0, cost[6] = { 500, 100, 50, 10, 5, 1 };cin >> n;n = 1000 - n;for (auto nx : cost) {ans += n / nx;n %= nx;}cout << ans << endl;}cs 반응형'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ 18238, Python 3] ZOAC 2 (0) 2021.07.27 [BOJ 14659, C++] 한조서열정리하고옴ㅋㅋ (0) 2021.07.26 [BOJ 2810, C++] 컵홀더 (0) 2021.07.26 BOJ 17069 파이프 옮기기 2(python 3) (0) 2019.04.11 BOJ 17070 파이프 옮기기 1(python 3) (0) 2019.04.11