문제설명
소스코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int coinCount = 0;
while(true)
{
if(n % 5 == 0)
{
coinCount += n / 5;
System.out.println(coinCount);
break;
}
else
{
n -= 2;
++coinCount;
}
if(n < 0)
{
System.out.println(-1);
break;
}
}
}
}
설명
- n을 5로 나누었을때 나머지가 0이 되면 종료 조건이 된다. (n이 0이면 n을 5로 나눈 나머지도 0이기 때문)
- n 이 음수라면 동전을 교환해줄 수 없다.
- n을 5로 나누었을 때 나머지가 0이면, 동전 개수에 n을 5로 나누었을 때 몫을 더하고 출력한다.
외의 경우에는 n을 2만큼 감소시키고, 동전 개수를 증가시킨다.
'자료구조 & 알고리즘 > BOJ' 카테고리의 다른 글
[Java] 백준 11728번 문제 (배열 합치기) (0) | 2023.08.12 |
---|---|
[Java] 백준 11729번 문제 (하노이 탑 이동 순서) (0) | 2023.08.11 |
[Java] 백준 26069번 문제 (붙임성 좋은 총총이) (0) | 2023.08.10 |
[Java] 백준 2164번 문제 (카드2) (0) | 2023.08.09 |
[Java] 백준 11866번 문제(요세푸스 문제 0) (0) | 2023.08.08 |