https://www.acmicpc.net/problem/13458
์ฝ๋
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์ ํด์ค๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค[Java] - ์ซ์์ ํํ (0) | 2020.01.21 |
---|---|
[๋ฐฑ์ค] 2164๋ฒ: ์นด๋2(ํ) (0) | 2020.01.21 |
[๋ฐฑ์ค] 11651๋ฒ: ์ขํ ์ ๋ ฌํ๊ธฐ2 (0) | 2020.01.20 |
[๋ฐฑ์ค] 10773๋ฒ: ์ ๋ก (0) | 2020.01.20 |
[๋ฐฑ์ค] 2609๋ฒ: ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ (0) | 2020.01.20 |
๋๊ธ