https://www.acmicpc.net/problem/5585
5585번: 거스름돈
문제 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건�
www.acmicpc.net
처음에 쓴 코드
#include <cstdio>
int main(void){
int Money, M500,M100,M50,M10,M5,M1;
scanf("%d",&Money);
Money = 1000-Money;
M500 = Money/500;
Money -= M500 * 500;
M100 = Money/100;
Money -= M100 * 100;
M50 = Money/50;
Money -= M50 * 50;
M10 = Money/10;
Money -= M10 * 10;
M5 = Money/5;
Money -= M5 * 5;
M1 = Money;
printf("%d",M500+M100+M50+M10+M5+M1);
}
그 다음 쓴 코드.
#include <cstdio>
int main(void){
int ans=0, cnt, Money, charge[6]={500,100,50,10,5,1};
scanf("%d",&Money);
Money = 1000 - Money;
for(int i=0; i<6; i++){
cnt = Money/charge[i];
Money -= cnt*charge[i];
ans += cnt;
}
printf("%d",ans);
}
'알고리즘 문제' 카테고리의 다른 글
[C/C++ 백준 11399번] ATM (Silver 3) (0) | 2020.08.02 |
---|---|
[C/C++ 백준 2217번] 로프 (Silver 4) (0) | 2020.08.02 |
[C/C++ 백준 1262번] 알파벳 다이아몬드 (Silver 3) (0) | 2020.08.01 |
[C/C++ 백준 11050번] 이항 계수 1 (Bronze 1) (Class 2) (0) | 2020.07.29 |
[C/C++ 백준 11650번] 좌표 정렬하기 (Silver 5) (Class 2) (0) | 2020.07.29 |