티스토리 뷰

728x90
반응형

백준 온라인 저지(BOJ) 2720번 세탁소 사장 동혁

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

 

2720번: 세탁소 사장 동혁

각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다.

www.acmicpc.net

* 사용언어 : C언어, C++

 

1. 문제

손님이 받는 동전의 개수가 최소가 되도록 거스름돈을 구성하여 개수를 출력

거스름돈 C는 500센트 이하이고, 동전 단위는 25센트, 10센트, 5센트, 1센트

 

2. 풀이

거스름돈 C를 입력받은 뒤 가장 큰 단위부터 아래 절차를 반복합니다.

 

1) C 를 해당 단위로 나누어서 그 몫(개수) + 공백을 출력합니다.

2) 이어서 C 를 해당 단위로 나머지 연산(%)을 하여 나머지만 남깁니다.

 

반복문 작성 편의를 위해

각 단위(25, 10, 5, 1)를 배열로 선언해두고 index 를 활용하여 구현하였습니다.

 

3. 코드

#ifndef _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#endif
/*
2720_세탁소 사장 동혁
1116kb	0ms
*/
#include <cstdio>

int units[] = { 25, 10, 5, 1 };

int main() {
#ifdef _WIN32
	freopen("input.txt", "r", stdin);
#endif // _WIN32
	int t, c;
	scanf("%d", &t);

	while (t--) {
		scanf("%d", &c);
		for (int i = 0; i < 4; ++i) {
			printf("%d ", c / units[i]);
			c %= units[i];
		}
		puts("");
	}
	return 0;
}
728x90
반응형
댓글