๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm

[๋ฐฑ์ค€] 13458๋ฒˆ: ์‹œํ—˜๊ฐ๋…

by ์ฃผ๋ฐœ2 2020. 1. 21.
๋ฐ˜์‘ํ˜•

https://www.acmicpc.net/problem/13458

 

13458๋ฒˆ: ์‹œํ—˜ ๊ฐ๋…

์ฒซ์งธ ์ค„์— ์‹œํ—˜์žฅ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” ๊ฐ ์‹œํ—˜์žฅ์— ์žˆ๋Š” ์‘์‹œ์ž์˜ ์ˆ˜ Ai (1 ≤ Ai ≤ 1,000,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์…‹์งธ ์ค„์—๋Š” B์™€ C๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ B, C ≤ 1,000,000)

www.acmicpc.net

 

 

 

์ฝ”๋“œ

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int N = scan.nextInt();	// ์‹œํ—˜์žฅ ๊ฐœ์ˆ˜
		int[] nNum = new int[N];
		for(int i=0; i<nNum.length; i++)
			nNum[i] = scan.nextInt();	// ์‹œํ—˜์žฅ ๋ณ„ ์‘์‹œ์ž ์ˆ˜
		int B = scan.nextInt();	// ์ด๊ฐ๋…๊ด€์ด ๊ฐ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์‘์‹œ์ž ์ˆ˜
		int C = scan.nextInt();	// ๋ถ€๊ฐ๋…๊ด€์ด ๊ฐ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์‘์‹œ์ž ์ˆ˜
		
		// ํ•„์š”ํ•œ ๊ฐ๋…๊ด€ ์ˆ˜(๊ฐ ์‹œํ—˜์žฅ์— ์ด๊ฐ๋…๊ด€ 1๋ช…์”ฉ ์žˆ์–ด์•ผํ•˜๋ฏ€๋กœ ์ดˆ๊ธฐ๊ฐ’์„ N๊ฐœ์˜ ์‹œํ—˜์žฅ์œผ๋กœ ์ €์žฅ)
		long count =  N;			
		
		for(int i=0; i<nNum.length; i++) {
			nNum[i] -= B;	// ์ด๊ฐ๋…๊ด€ ํ•œ๋ช…์”ฉ ํ•„์š”
			
			if(nNum[i] > 0) {
				count += nNum[i] / C;	// ๋ถ€๊ฐ๋…๊ด€ ํ•„์š”ํ•œ ์ˆ˜
				if(nNum[i]%C != 0)		// ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€ ์•Š์„๋•Œ => ํ•œ๋ช… ๋” ํ•„์š”
					count ++;
			}
		}
		
		System.out.println(count);
		scan.close();
	}
}

 

ํ’€์ด

์ •๋‹ต๋ฅ ์ด ๋‚ฎ์€๋ฐ, ์ž๋ฃŒํ˜• ๋•Œ๋ฌธ์— ๋งŽ์ด ํ‹€๋ฆฐ ๊ฒƒ ๊ฐ™๋‹ค.

๋‚˜๋„ N, Ai, B, C๊ฐ€ ์ „๋ถ€ 1,000,000 ์ดํ•˜์—ฌ์„œ int๋กœ ์„ ์–ธํ–ˆ๋‹ค๊ฐ€..

N์ด 1,000,000 ์ด๊ณ , Ai๊ฐ€ ๊ฐ๊ฐ 1,000,000 ์ผ๋•Œ B, C๊ฐ€ 1์ด๋ฉด 1,000,000 * 1,000,000 ์œผ๋กœ int ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚œ๋‹ค.

๋”ฐ๋ผ์„œ long์œผ๋กœ ์„ ์–ธํ•ด์•ผํ•œ๋‹ค.

 

์‹œํ—˜์žฅ ๋ณ„๋กœ ์ด๊ฐ๋…๊ด€์ด 1๋ช…์”ฉ ์กด์žฌํ•ด์•ผํ•˜๋ฏ€๋กœ, count์˜ ์ดˆ๊นƒ๊ฐ’์„ ์‹œํ—˜์žฅ ๊ฐœ์ˆ˜์ธ N์˜ ํฌ๊ธฐ๋กœ ์„ค์ •ํ•œ๋‹ค.

๊ทธ ํ›„ ๊ฐ ์‹œํ—˜์žฅ ๋ณ„ ์‘์‹œ์ž์ˆ˜๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์‘์‹œ์ž์ˆ˜์—์„œ ์ด๊ฐ๋…๊ด€์„ ๋นผ๊ณ ,

๋งŒ์•ฝ ๋บ€ ๊ฐ’์ด 0๋ณด๋‹ค ํฌ๋‹ค๋ฉด ๋ถ€๊ฐ๋…๊ด€์ด ํ•„์š”ํ•˜๋ฏ€๋กœ ๋ถ€๊ฐ๋…๊ด€๋งŒํผ ๋‚˜๋ˆˆ์ˆ˜๋ฅผ ๋”ํ•˜๋ฉด ๋œ๋‹ค.

์ด๋•Œ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€ ์•Š๋Š”์ˆ˜

ex) ์‘์‹œ์ž์ˆ˜๊ฐ€ 3๋ช…์ด๊ณ , ๋ถ€๊ฐ๋…๊ด€์ด ๊ฐ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์‘์‹œ์ž์ˆ˜๊ฐ€ 2๋ช…์ผ๋•Œ

์œ„์™€ ๊ฐ™์ด ๋‚˜๋ˆ„์–ด๋–จ์–ด์ง€์ง€ ์•Š์„๋•Œ๋Š” +1์„ ํ•ด์ค€๋‹ค.

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€