자바썸
자바랑 썸타는중
자바썸

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
자바썸
문제풀이/백준

백준 11047. 동전 0 (JAVA)

백준 11047. 동전 0 (JAVA)
문제풀이/백준

백준 11047. 동전 0 (JAVA)

2022. 4. 1. 11:35

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	
	
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine()); 
		
		int N = Integer.parseInt(st.nextToken());
		int K = Integer.parseInt(st.nextToken());
	
		int index = N - 1;
		int[] Money = new int[N];
		
		for(int i = 0 ; i < Money.length; i++) {
			
			Money[i] = Integer.parseInt(br.readLine());
	
		}
		
		int cnt = 0;
		
		while(K > 0) {
			
			if(K < Money[index]) {
				
				index--;
				
			}
			else if(K >= Money[index]) {
				
				cnt += (K / Money[index]);
				
				K %= Money[index];
				
			}
			
		}
		System.out.println(cnt);
	}
}

○ 문제 요약

입력받은 K의 값을 입력받은 N의 값으로 나눴을 때 나올 수 있는 최솟값을 출력해라. 

○ 문제 풀이

알고리즘 분류는 그리디 알고리즘이고 이전에 풀은 ATM 문제와 같은 알고리즘이다.

 

특별히 어려운 부분은 없지만 while문은 보고 지나가고 싶다.

while문의 조건을 보면 K가 0보다 클 때까지 수행하고

만약 Money[index]의 값이 K보다 크다면 작거나 같아질 때까지 index-- 한다.

 

else if 조건을 성립하면 K / Money[index]한 값을 cnt += (K/Money[index]) 해주고

K % Money[index] 값을 다시 K에 넣어줘 이 과정을 반복해서 수행하도록 한다.

 

그러면 K가 0보다 작아졌을 때,

while문을 탈출하고 cnt를 출력해주면 최솟값을 출력할 수 있다.   

○ 결과

'문제풀이 > 백준' 카테고리의 다른 글

백준 1932. 정수 삼각형 (JAVA)  (0) 2022.04.04
백준 19947. 투자의 귀재 배주형 (JAVA) (DP)  (0) 2022.04.02
백준 15649. N과 M(1)(JAVA)  (0) 2022.03.30
백준 9461. 파도반 수열(JAVA)  (2) 2022.03.29
백준 1003. 피보나치 함수(JAVA)  (2) 2022.03.28
    '문제풀이/백준' 카테고리의 다른 글
    • 백준 1932. 정수 삼각형 (JAVA)
    • 백준 19947. 투자의 귀재 배주형 (JAVA) (DP)
    • 백준 15649. N과 M(1)(JAVA)
    • 백준 9461. 파도반 수열(JAVA)
    자바썸
    자바썸

    티스토리툴바

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.