-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathSB_150369.java
More file actions
27 lines (25 loc) ยท 1.55 KB
/
SB_150369.java
File metadata and controls
27 lines (25 loc) ยท 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
* 1. ์ผ๋จ, ๊ฐ์ฅ ๋ฉ๋ฆฌ์๋ ์ง๋ถํฐ ๋ฐฐ๋ฌํด์ผํจ. (๋ฌผ๊ฑด์ด์๋ ํ ๋ฌด์กฐ๊ฑด ์์ผํจ, ์๋ณต์ด๋๊น, ๋จผ ๊ฑฐ๋ฆฌ๋ถํฐ ํด์น์)
* ์ด๋ฅผ ํธ๋ฆฌํ๊ฒ ํ๊ธฐ์ํด ๋์ ํฉ ์ฌ์ฉ. (i๋ฒ์งธ ์์ ์ผ๋ก๋ถํฐ ๋จ์์๋ ๋ฐฐ๋ฌ/์๊ฑฐํด์ผํ ์)
* 2. ์ญ์์ผ๋ก ๋ฐฐ๋ฌ ์์
* ํ์ฌ ์์นi์์ ๋ฐฐ๋ฌ/์๊ฑฐํด์ผํ ๋ฌผ๊ฑด์ด ํ์ฌ ์ฉ๋cap๊ฐ์ง๊ณ ์๋๋ฉด ์๋ณตํด์ผํจ (์๋ณตํ์++), ํ์ฌ์์น ๋ฐฐ๋ฌ/์๊ฑฐ๋ฅผ ๋ค ์๋ฃํ ์ ์์๋๊น์ง ๋ฐ๋ณต
* ๊ฑฐ๋ฆฌ๊ฐ ๊ฐฑ์ ์, ํ์ฌ์์น(๊ฑฐ๋ฆฌ)์์ ์๋ณตํ ํ์
* ๊ฑฐ๊พธ๋ก ๋๋ฉด์, n-1์์น๋ถํฐ ์ปค๋ฒ๊ฐ๋ฅํ ์๋ณตํ์๋ฅผ ์ธ๊ณ ์๊ณ , ์์ผ๋ก ์ค๋ฉด์ ๊ณ์ ์ปค๋ฒ๊ฐ๋ฅํ ์๋ณตํ์ ์นด์ดํธ (๋์ ํฉ์ด๊ธฐ์ ์ด์ ์ฒ๋ฆฌ๋ด์ฉ๊น์ง ๋ค ํฌํจ๋์ด์์)
* */
class SB_150369 {
public long solution(int cap, int n, int[] deliveries, int[] pickups) {
for (int i = n-2; i >=0; i--) { // ๋์ ํฉ ๊ตฌํ๊ธฐ
deliveries[i] += deliveries[i+1];
pickups[i] += pickups[i+1];
}
int k = 0; // ์๋ณต ํ์
long ans = 0;
for (int i = n - 1; i >= 0; i--) {
while (deliveries[i] > cap * k || pickups[i] > cap * k) { // ํ์ฌ ์์น์์ ๋ฐฐ๋ฌ๊ณผ ์๊ฑฐ๊ฐ ๋ชจ๋ ์๋ฃ๋๊ธฐ์ํ ์๋ณตํ์๋ฅผ ๊ตฌํด์ผํจ
ans += (i+1)* 2L; // ์ด๊ฑฐ๋ฆฌ ๊ฐฑ์ : ํ์ฌ์์น์์ ์๋ณต ์ผ์ด๋จ. ํด๋น ๋ด์ฉ ๋ํด์ค
k++; // ์๋ณตํ์ ์
๋ฐ์ดํธ
}
}
return ans;
}
}