[Algorithm] ๐Ÿ‘›๋ฐฑ์ค€ 11047 ๋™์ „ 0

HaJingJingยท2021๋…„ 5์›” 2์ผ
0

Algorithm

๋ชฉ๋ก ๋ณด๊ธฐ
29/119

0. ๋ฌธ์ œ

์ค€๊ทœ๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋™์ „์€ ์ด N์ข…๋ฅ˜์ด๊ณ , ๊ฐ๊ฐ์˜ ๋™์ „์„ ๋งค์šฐ ๋งŽ์ด ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

๋™์ „์„ ์ ์ ˆํžˆ ์‚ฌ์šฉํ•ด์„œ ๊ทธ ๊ฐ€์น˜์˜ ํ•ฉ์„ K๋กœ ๋งŒ๋“ค๋ ค๊ณ  ํ•œ๋‹ค. ์ด๋•Œ ํ•„์š”ํ•œ ๋™์ „ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ž…๋ ฅ
์ฒซ์งธ ์ค„์— N๊ณผ K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค N โ‰ค 10, 1 โ‰ค K โ‰ค 100,000,000)

๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๋™์ „์˜ ๊ฐ€์น˜ Ai๊ฐ€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค Ai โ‰ค 1,000,000, A1 = 1, i โ‰ฅ 2์ธ ๊ฒฝ์šฐ์— Ai๋Š” Ai-1์˜ ๋ฐฐ์ˆ˜)

์ถœ๋ ฅ
์ฒซ์งธ ์ค„์— K์›์„ ๋งŒ๋“œ๋Š”๋ฐ ํ•„์š”ํ•œ ๋™์ „ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค


1. ์•„์ด๋””์–ด

๊ฐ€์žฅ ํฐ ๋‹จ์œ„์˜ ๋ˆ๋ถ€ํ„ฐ ๋‚˜๋ˆ„๊ณ  ๋นผ์ฃผ๊ธฐ

2. ํ•ต์‹ฌ ํ’€์ด

๊ฐ€์žฅ ํฐ ๋‹จ์œ„์˜ ๋ˆ๋ถ€ํ„ฐ ๋‚˜๋ˆ„๊ณ  ๋นผ์ฃผ๊ธฐ

count += (k/coin[i]);
k %= coin[i];

3. ์ฝ”๋“œ

import java.io.*;

public class Greedy_1 {

	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String s[] = br.readLine().split(" ");
		
		int n = Integer.parseInt(s[0]);
		
		int k = Integer.parseInt(s[1]);
		int count = 0;
		
		int coin[] = new int[n];
		
		for(int i=0; i<n; i++) 
			coin[i] = Integer.parseInt(br.readLine().trim());
		
		for(int i=n-1; i>=0; i--) {
			if(k >= coin[i]) {
				count += (k/coin[i]);
				k %= coin[i];
			}
		}
		
		System.out.println(count);
		
	}

}

4. ๊ฒฐ๊ณผ

๋„ˆ๋ฌด ์‰ฌ์›Œ...

profile
๐ŸŒฑ์ดˆ๋ณด ๊ฐœ๋ฐœ์ž๐ŸŒฑ

0๊ฐœ์˜ ๋Œ“๊ธ€