본문 바로가기
온라인 저지/BOJ

[BOJ/Java] 2839 설탕 배달

by ahj 2022. 2. 15.
import java.io.BufferedReader;
import java.io.InputStreamReader;

public class BOJ2839 {

	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n = Integer.parseInt(br.readLine());
		int cnt = 0;
		while (n > 0) {
			if (n % 5 == 0) {
				cnt += n / 5;
				break;
			} else if (n % 3 == 0) {
				n -= 3;
				cnt++;
			} else {
				n -= 5;
				if (n < 0) {
					cnt = -1;
					break;
				}
				cnt++;
			}
		}
//		더 좋은 코드
//		int bag3kg = 0;
//		while (n % 5 != 0 && n >= 0) {
//			bag3kg++;
//			n -= 3;
//		}
//
//		// n이 5kg로 나눠지거나 음수이거나
//		int cnt = (n < 0) ? -1 : bag3kg + n / 5;

		System.out.println(cnt);
	}

}

 

그리디 아직 잘 못한다. 솔직히 제대로 풀어내지 못한 문제. 3을 빼주면서 5로 나누어 떨어지기를 기다린다는 생각을 해보자

'온라인 저지 > BOJ' 카테고리의 다른 글

[BOJ/Java] 1182 부분수열의 합  (0) 2022.02.16
[BOJ/Java] 11723 집합  (0) 2022.02.15
[BOJ/Java] 1074 Z  (0) 2022.02.15
[BOJ/Java] 3040 백설 공주와 일곱 난쟁이  (0) 2022.02.14
[BOJ/Java] 20361 일우는 야바위꾼  (0) 2022.02.14

댓글