[JS] ํ๋ก๊ทธ๋๋จธ์ค - ๊ฒน์น๋ ์ ๋ถ์ ๊ธธ์ด
๐ ๋ฌธ์
์ ๋ถ 3๊ฐ๊ฐ ํํํ๊ฒ ๋์ฌ ์์ต๋๋ค. ์ธ ์ ๋ถ์ ์์๊ณผ ๋ ์ขํ๊ฐ [[start, end], [start, end], [start, end]] ํํ๋ก ๋ค์ด์๋ 2์ฐจ์ ๋ฐฐ์ด lines๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๋ ๊ฐ ์ด์์ ์ ๋ถ์ด ๊ฒน์น๋ ๋ถ๋ถ์ ๊ธธ์ด๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.
lines๊ฐ [[0, 2], [-3, -1], [-2, 1]]์ผ ๋ ๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.

์ ๋ถ์ด ๋ ๊ฐ ์ด์ ๊ฒน์น ๊ณณ์ [-2, -1], [0, 1]๋ก ๊ธธ์ด 2๋งํผ ๊ฒน์ณ์์ต๋๋ค.
์ ํ์ฌํญ
- lines์ ๊ธธ์ด = 3
- lines์ ์์์ ๊ธธ์ด = 2
- ๋ชจ๋ ์ ๋ถ์ ๊ธธ์ด๊ฐ 1 ์ด์์ ๋๋ค.
- lines์ ์์๋ [a, b] ํํ์ด๋ฉฐ, a, b๋ ๊ฐ๊ฐ ์ ๋ถ์ ์ ๋์ ์
๋๋ค.
- -100 โค a < b โค 100
๐ก ์์ด๋์ด
์ ๋ถ์ด ์ง๋๊ฐ๋ ๊ณณ์ ๋ฐฐ์ด๋ก ํํํ๋ค.
์ ๋ถ์ ์ด ๊ธธ์ด๊ฐ 200์ด ์ต๋๊ธฐ ๋๋ฌธ์ ํฌ๊ธฐ๋ฅผ 200์ผ๋ก ๋๊ณ , ์ขํ๊ฐ ์์๊ฐ ๋์ฌ์ ์์ผ๋๊น ์ง๋๊ฐ ๊ณณ์ ํ์ํ ๋ ์ธ๋ฑ์ค + 100 ํด์ค๋ค.
2๋ฒ ์ด์ ์ง๋๊ฐ๋ ์ขํ์ ๊ฐ์ 2 ์ด์์ด ๋๋ค.
โ๏ธ ํ์ด
function solution(lines) {
var answer = 0;
let linesPassed = new Array(200);
linesPassed.fill(0);
for(let i=0; i<lines.length; i++){
for(let j=lines[i][0]; j<lines[i][1]; j++){ // ์ฃผ์ด์ง ์ขํ ์์๋ถํฐ ๋๊น์ง ๋๋ค.
linesPassed[j+100]++;
}
}
for(let i=0; i<linesPassed.length; i++){ // ์ฌ๋ฌ๋ฒ ์ง๋ ๊ณณ ํ์ธ
if(linesPassed[i] >=2){
answer++;
}
}
return answer;
}