728x90
λ°μν
π 08 - νμμ€ λ°°μ (그리λ μκ³ λ¦¬μ¦)
κ° νμμ λν΄ μμμκ°κ³Ό λλλ μκ°μ΄ μ£Όμ΄μ Έ μκ³ , κ° νμκ° κ²ΉμΉμ§ μκ² νλ©΄μ νμμ€μ μ¬μ©ν μ μλ μ΅λμμ νμλ₯Ό μ°Ύλ λ¬Έμ μ΄λ€. λ¨, νμμ μμμκ°κ³Ό λλλ μκ°μ 쑰건μ (μμμκ° <= λλλ μκ°)μ΄λ€.
π νμ΄ λ°©λ²
그리λ μκ³ λ¦¬μ¦ λ¬Έμ λ μ λ ¬μ λ¨Όμ ν΄μΌνλ€. μ΄λ€ κΈ°μ€μΌλ‘ μ λ ¬μ ν΄μΌν κΉ? νμκ° λΉ¨λ¦¬ λλμΌ λ€μ λ λ§μ κΈ°νκ° μκΈ°λ―λ‘ νμκ° λΉ¨λ¦¬ λλλ μμλλ‘ λλλ μκ°μ΄ κ°λ€λ©΄ μ 쑰건(μμμκ° <= λλλ μκ°)μ μν΄ νμκ° λΉ¨λ¦¬ μμνλ μμλλ‘ μ λ ¬νλ€.
- λ°°μ΄μ λ¨Όμ μ κΈ°μ€λλ‘ μ λ ¬νλ€.
- μ΄μ νμ μ’ λ£μκ° endTimeμ 0μΌλ‘ μ΄κΈ°ννλ€.
- for λ¬Έμ λλ©΄μ νμ μμμκ°μ΄ μ΄μ νμ μ’ λ£μκ°λ³΄λ€ ν¬κ±°λ κ°λ€λ©΄(meeting[i][0]: νμ μμ μκ°) answer++μ νκ³ , endTimeμ ν΄λΉ νμμ μ’ λ£μκ°μ μ μ₯νλ€.
π νμ΄
function solution(meeting) {
let answer = 0;
// νμκ° λΉ¨λ¦¬ λλμΌ λ€μ λ λ§μ κΈ°νκ° μκΉ!
meeting.sort((a, b) => {
if (a[1] === b[1]) return a[0] - b[0];
else return a[1] - b[1];
});
let endTime = 0;
for (let i = 0; i < meeting.length; i++) {
if (meeting[i][0] >= endTime) {
answer++;
endTime = meeting[i][1];
}
}
return answer;
}
let arr = [
[3, 3],
[1, 3],
[2, 3],
];
console.log(solution(arr));
'Algorithm > μΈνλ°(inflearn)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JavaScript/section 7] 10 - μ΄λΆ κ²μ (2) | 2022.10.09 |
---|---|
[JavaScript/section 7] 09 - κ²°νΌμ (2) | 2022.10.08 |
[JavaScript/section 7] 07 - μ’ν μ λ ¬ (0) | 2022.10.06 |
[JavaScript/section 7] 06 - μ₯λκΎΈλ¬κΈ° νμ (0) | 2022.10.06 |
[JavaScript/section 7] 05 - LRU (0) | 2022.10.05 |