https://programmers.co.kr/learn/courses/30/lessons/42885
์ฝ๋
import java.util.Arrays;
class Solution {
public int solution(int[] people, int limit) {
int answer = 0;
int i = 0;
int j;
Arrays.sort(people);
// ๋ชธ๋ฌด๊ฒ๊ฐ ๊ฐ์ฅ ๋ฌด๊ฑฐ์ด ์ฌ๋๋ถํฐ ํ๋จํ๋ค.
for(j=people.length-1; i<=j; j--) {
// ์ต์ + ์ต๋ ๋ชธ๋ฌด๊ฒ 2๋ช
์ ํฉ์ด ๋ฌด๊ฒ์ ํ๋ณด๋ค ํฐ ๊ฒฝ์ฐ
// ๊ฐ์ฅ ํฐ ๋ชธ๋ฌด๊ฒ์ ์ธ์์ ๋ณดํธ1๋์ ํ์ ๋ณด๋ธ๋ค.
if(people[j] + people[i] > limit)
answer ++;
/* ์ต์ + ์ต๋ ๋ชธ๋ฌด๊ฒ 2๋ช
์ ํฉ์ด ๋ฌด์ ๊ฒํ๋ณด๋ค ๊ฐ๊ฑฐ๋ ์์ ๊ฒฝ์ฐ
* - ๋๋ช
์ ํ ๋ณดํธ์ ํ์ ๋ณด๋ธ๋ค.
* - ๊ทธ ๋ค์์ผ๋ก ๋ชธ๋ฌด๊ฒ๊ฐ ์์ ์ธ์์ ๊ธฐ์ค์ผ๋ก ์ผ์์ผ ํ๊ธฐ ๋๋ฌธ์ i๊ฐ์ ++ํด์ค๋ค.
*/
else {
answer ++;
i ++;
}
}
return answer;
}
}
ํ์ด
๋ ผ๋ฆฌ๋ฅผ ์๊ฐํด๋ด๋๊ฒ ์ด๋ ค์ด ๋ฌธ์ ์๋ค ..
๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ค์๊ณผ ๊ฐ๋ค.
1. ๊ตฌ๋ช ๋ณดํธ๋ ์ต๋ 2๋ช ์ฉ ๋ฐ์ ํ ์ ์๋ค.
2. ๊ตฌ๋ช ๋ณดํธ์ ํ์ธ ์ ์๋ ๋ฌด๊ฒ ์ ํ์ด ์๋ค.
- ์ฌ๋๋ค์ ๋ชธ๋ฌด๊ฒ๊ฐ 50kg, 60kg ์ด๊ณ ๊ตฌ๋ช ๋ณดํธ์ ๋ฌด๊ฒ์ ํ์ด 100kg์ด๋ฉด ๊ตฌ๋ช ๋ณดํธ๋ 2๊ฐ๊ฐ ํ์ํ๋ค.
3. ๊ตฌ๋ช ๋ณดํธ๋ฅผ ์ต๋ํ ์ ๊ฒ ์ฌ์ฉํด ๋ชจ๋ ์ฌ๋์ ๊ตฌ์ถํ๋ค.
๊ฐ์ฅ ๋ชธ๋ฌด๊ฒ๊ฐ ์ ์ ์ธ์๊ณผ ๊ฐ์ฅ ๋ชธ๋ฌด๊ฒ๊ฐ ๋์ ์ธ์์ ํฉ์ด ๋ฌด๊ฒ์ ํ๋ณด๋ค ํฌ๋ ์๋๋ฅผ ํ๋จํด์ ํด๊ฒฐํ๋ฉด ๋๋ค.
์ฆ, ๋ฐฐ์ด์ ์ ๋ ฌํด์ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์์์ ๊ฐ์ฅ ์ผ์ชฝ ์์์ ํฉ์ ๊ตฌํด์, ๋ฌด๊ฒ์ ํ๋ณด๋ค ํฌ๋ ์๋๋ฅผ ๋๋์ด ํด๊ฒฐํ๋ค.
๋ง์ฝ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ ์์์ ๊ฐ์ฅ ์ผ์ชฝ ์์์ ํฉ์ด ๋ฌด๊ฒ์ ํ๋ณด๋ค ํฌ๋ค๋ฉด,
๋ ๋ช ์ ํจ๊ป ํ์ธ ์ ์์ผ๋ฏ๋ก ๊ฐ๊ฐ ๋ฐ๋ก ๋ณดํธ์ ํ์์ ๋ณด๋ธ๋ค.
์์ ๋ฐ๋๋ก ๋ ์์์ ํฉ์ด ๋ฌด๊ฒ์ ํ๋ณด๋ค ์๋ค๋ฉด,
๋ ๋ช ์ ํจ๊ป ํ์ธ ์ ์์ผ๋ฏ๋ก ํจ๊ป ๋ณดํธ์ ํ์์ ๋ณด๋ธ๋ค.
๊ทธ ํ ๊ฐ์ฅ ์ ์์๋ ๋ณดํธ์ ํ์ ๋ณด๋์ผ๋ฏ๋ก, ์ธ๋ฑ์ค๊ฐ์ +1ํด์ค๋ค. (i++)
for๋ฌธ์ ์กฐ๊ฑด์ i<=j ์ธ๋ฐ, j๊ฐ์ ์์์ง๊ณ , i๊ฐ์ ์ปค์ง๋ฏ๋ก ๋ ๋ณ์๊ฐ ๋ง๋ ๋ ๊น์ง ๋ฐ๋ณตํด์ ๋ณดํธ๋ฅผ ํ์์ ๋ณด๋ด๋ฉด ๋๋ค.
๋ณด๋ผ ์ธ์์ด ํ์์ผ ๊ฒฝ์ฐ => ๋ ๊ฐ์ด ๊ฐ์ ์ง๋ ๊ฒฝ์ฐ๋ ๋ฌด์กฐ๊ฑด ํ์ ๋ณด๋ด์ผํ๋ฏ๋ก i=j๋ ์กฐ๊ฑด์ ํฌํจํ๋ค.
ex) ๋ชธ๋ฌด๊ฒ [20, 30, 30, 50, 60, 70, 80, 90, 100] ์ผ๋...
100kg, 90kg๋ ๊ฐ๊ฐ ๋ฐ๋ก ํ์์ ๋ณด๋ธ๋ค.
๊ทธ ํ (80kg 20kg) , (70kg 30kg), (60kg 30kg) ์ ๋ณด๋ธ ํ 50kg๋ง ๋จ์ผ๋ฏ๋ก 1๋๋ฅผ ๋ ๋ณด๋ธ๋ค.
(์ด๋ i, j์ ๊ฐ์ ๋๋ค 3์ด๋ค.)
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 11403๋ฒ: ๊ฒฝ๋ก ์ฐพ๊ธฐ(dfs, bfs) (0) | 2020.02.05 |
---|---|
[๋ฐฑ์ค] 1475๋ฒ: ๋ฐฉ ๋ฒํธ(๋ฌธ์์ด, ๊ตฌํ) (0) | 2020.02.05 |
[๋ฐฑ์ค] 9625๋ฒ: BABBA(DP) (0) | 2020.02.04 |
[๋ฐฑ์ค] 1783๋ฒ: ๋ณ๋ ๋์ดํธ(๊ทธ๋ฆฌ๋, ๊ตฌํ) (0) | 2020.02.04 |
[๋ฐฑ์ค] 2667๋ฒ: ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ(๊ทธ๋ํ, DFS) (0) | 2020.02.03 |
๋๊ธ