반응형
링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PsIl6AXIDFAUq
분류
그리디
개인적 난이도
매우 쉬움 | 쉬움 | 보통 | 어려움 | 매우 어려움 |
핵심 알고리즘
그리디 알고리즘을 활용해 가장 금액이 큰 단위부터 거스름돈의 수를 계산한다.
시행착오
없음
코드
#include<iostream>
int main(int c, char** v)
{
int tc, T;
int div[] = {50000, 10000, 5000, 1000, 500, 100, 50, 10};
scanf("%d", &T);
for(tc = 1; tc <= T; ++tc){
int N;
scanf ("%d", &N);
printf("#%d\n", tc);
for (int i = 0; i < 8; i++){
int q = N / div[i];
N -= q * div[i];
printf("%d ", q);
}
printf("\n");
}
return 0;
}
반응형
'알고리즘 > SW Expert Academy' 카테고리의 다른 글
1244. 최대 상금 (0) | 2022.02.16 |
---|---|
4408. 자기 방으로 돌아가기 (0) | 2022.02.16 |
1230. 암호문3 (0) | 2022.02.16 |
3316. 동아리실 관리하기 (0) | 2022.02.16 |
10726. 이진수 표현 (0) | 2022.02.16 |