๋ฌธ์ ์ ๋ชฉ | ์ ๋ต๋ฅ | ๋์ด๋ |
์๊ฒฉ์์คํ | 33% | Lv.2 |
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
๋ฌธ์ ์์ฝ
B ๋๋ผ๊ฐ A ๋๋ผ์ ๋ชจ๋ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ์ ์๊ฒฉ์ํฌ๋์ ์ต์ ์๊ฒฉ ๋ฏธ์ฌ์ผ ๊ฐ์๋ฅผ ๊ตฌํ์ฌ๋ผ
์กฐ๊ฑด 1) A, B ๋๋ผ์ ๋ฏธ์ฌ์ผ์ 2์ฐจ์ ๊ณต๊ฐ์ ์กด์ฌํ๋ค.
์กฐ๊ฑด 2) A ๋๋ผ์ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ์ x์ถ๊ณผ ์ํ์ผ๋ก ๋ฐ์ฌ๋๋ฉฐ ์ด๋ฆฐ๊ตฌ๊ฐ(a, b)๋ก ํ์๋๋ค.(๊ฒฝ๊ณ ๊ตฌ๊ฐ์ ํฌํจํ์ง ์์)
์กฐ๊ฑด 3) B ๋๋ผ์ ์๊ฒฉ ๋ฏธ์ฌ์ผ์ x์ถ๊ณผ ์์ง์ผ๋ก ๋ฐ์ฌ๋๋ฉฐ ํด๋น ๊ตฌ๊ฐ์ ์๋ ๋ชจ๋ A๋๋ผ ๋ฏธ์ฌ์ผ์ ์๊ฒฉ์ํฌ ์ ์๋ค.
ํ์ด
Step1. x์ถ ๊ธฐ์ค์ผ๋ก A๋๋ผ์ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ ์ ๋ ฌ
Step2. ์ด์ ์์ ํ์ํ ์ต์ ๊ตฌ๊ฐ์ ๊ธฐ์ค์ผ๋ก ๋ฏธ์ฌ์ผ ์ถ๊ฐ ์ฌ๋ถ ํ๋จ
- ์ด์ ์ A๋๋ผ์ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ ๊ตฌ๊ฐ์ด ์ด์ ์ ํ์ํ ์ต์๊ตฌ๊ฐ์์ ๋ฒ์ด๋๋ฉด ๋ฏธ์ฌ์ผ ์ถ๊ฐ
- A๋๋ผ์ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ ๊ตฌ๊ฐ์ด ์ด์ ์ ํ์ํ ์ต์ ๊ตฌ๊ฐ๋ณด๋ค ์์ผ๋ฉด ์ต์ ๊ตฌ๊ฐ ์ ๋ฐ์ดํธ
- A๋๋ผ์ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ ๊ตฌ๊ฐ์ด ์ด์ ์ ํ์ํ ์ต์ ๊ตฌ๊ฐ๋ณด๋ค ๊ฐ๊ฑฐ๋ ํฌ๋ฉด PASS
์ฝ๋
import java.util.*;
class Solution {
public int solution(int[][] targets) {
// 1. X์ถ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ
Arrays.sort(targets, (o1, o2) -> {
return o1[0]-o2[0];
});
int answer = 0;
int end_x=0;
// 2. ์ด์ ์ ์ต์๊ตฌ๊ฐ๊ณผ A๊ตญ์ ํ์ฌ ํญ๊ฒฉ ๋ฏธ์ฌ์ผ ๊ตฌ๊ฐ์ ๋น๊ต
for(int i = 0; i < targets.length; i++) {
if (end_x<=targets[i][0]){ // (1)๋ฒ์๊ฐ ๋ค๋ฅด๋ฉด
answer+=1;
end_x=targets[i][1];
}else if(end_x>targets[i][1]){// (2)๋ฒ์๊ฐ ์์ผ๋ฉด->๋ฒ์ ์์
end_x=targets[i][1];
}
}
return answer;
}
}
'์๊ณ ๋ฆฌ์ฆ๐ฅ > ๋ฌธ์ ํ์ด (Java)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ๋ฉ๋ด ๋ฆฌ๋ด์ผ (Lv.2) 2023/7/12 (0) | 2023.07.12 |
---|---|
[Programmers] ์ฐ์๋ ๋ถ๋ถ ์์ด์ ํฉ (Lv.2) 2023/7/9 (0) | 2023.07.09 |
[Programmers] ๋ ์ ์ฌ์ด์ ์ ์ ์ (Lv.2) 2023/6/11 (0) | 2023.06.11 |