728x90
반응형
안녕하세요.
이번 포스팅은 프로그래머의 뇌를 단련하는 수학퍼즐 5번문제인 아직도 현금으로 계산하다니! 를 풀어보겠습니다
요즘에는 지하철이건 버스건 전자 화폐가 당연시 된다.
하지만, 아직도 현금으로 계산하는 사람도 있다.
이번에는 현금으로 내는 사사람을 위한 동전 교환기를 떠올려 보자.
이 기계는 10원, 50원, 100원, 500원 동전으로 섞어서 교환할 수 있고 모든 동전은 충분한 개수가 마련되어 있다고 가정한다.
문제
1,000원 지폐를 넣었을 때 나오는 동전의 조합이 몇 가지인지 구해보시오.
동전의 순서는 무시한다.
package changePaperToCoin;
import java.util.Scanner;
public class ChangePaperToCoin {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("지폐 투입은 얼마로 하실래요? : ");
int money = input.nextInt(), count=0;
for(int fiveHundred = 0; fiveHundred <= money/500; fiveHundred++) {
for(int oneHundred = 0; oneHundred <= money/100; oneHundred++) {
for(int fifty = 0; fifty <= money/50; fifty++) {
for(int ten = 0; ten <= money/10; ten++) {
if((fiveHundred*500 + oneHundred*100 + fifty*50 + ten*10) == money) {
count++;
System.out.printf("동전교환 경우 %d = 500원 : %d개, 100원 : %d개, 50원 : %d개, 10원 : %d개%n", count, fiveHundred, oneHundred, fifty, ten);
}
}
}
}
}
System.out.println("총 동전 교환 경우의 수 : " + count + "개");
}
}
정답 : 158개
728x90
반응형
'알고리즘 > 수학 퍼즐' 카테고리의 다른 글
[수학 퍼즐 / java] 06.콜라츠 추측 (0) | 2021.03.23 |
---|---|
[수학 퍼즐 / java] 04. 막대 자르기 (0) | 2021.03.23 |
[수학퍼즐 / java] 03.카드를 뒤집어라! (0) | 2021.03.23 |
[수학 퍼즐 / java] 01.앞뒤가 같은 10진수 만들기 (0) | 2021.03.23 |
댓글