문제
상근이는 설탕 가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕 공장에서 만드는 설탕은 봉지에 담겨져 있고, 봉지는 3킬로그램, 5킬로그램 봉지가 있다. 상근이가 최대한 적은 봉지를 들고 가려고 할 때, 봉지를 몇 개 가져가면 되는 지 그 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다. (3<= N <= 5000)
출력
상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, 정확하게 N킬로그램을 만들 수 없다면 -1을 출력한다.
예제 입력 1
18
예제 출력 1
4
예제 입력 2
4
예제 출력 2
-1
예제 입력 3
6
예제 출력 3
2
예제 입력 4
9
예제 출력 4
3
예제 입력 5
11
예제 출력 5
3
봉지의 개수를 최소화 하려면 최대한 5킬로그램 봉지를 많이 사용해야 한다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
int cnt =0;
while(true) {
if(n%5==0) {
cnt += n/5;
System.out.println(cnt);
break;
}
else {
n -=3;
cnt++;
}
if(n<0) {
System.out.println(-1);
break;
}
}
}
}```