무박 해커톤 행사장에는 1번부터 n번까지 번호가 붙은 자리가 한 줄로 놓여 있고,
각 자리에 참가자가 한 명씩 앉아 있습니다.
일부 참가자는 노트북 배터리가 방전돼 보조배터리를 받아야 작업할 수 있습니다. 한편 여분 보조배터리를 챙겨 온 참가자들도 있는데, 한 명이 최대 2개까지 가지고 있습니다.
빌려주는 규칙은 다음과 같습니다.
작업할 수 있는 참가자의 최대 인원수를 반환하세요.
function solution(n: number, drained: number[], lenders: number[][]): numberdrained: 배터리가 방전된 참가자의 자리 번호 목록lenders: [자리 번호, 여분 개수] 목록. 여분 개수는 1 또는 2| n | drained | lenders | 반환 |
|---|---|---|---|
| 6 | [2,3,5] |
[[3,2],[6,1]] |
6 |
| 5 | [1,2,4] |
[[2,2]] |
4 |
| 5 | [2,4] |
[[3,1]] |
4 |
| 4 | [2,3] |
[[3,1],[4,1]] |
3 |
n ≤ 100drained.length ≤ n, 자리 번호는 서로 겹치지 않습니다lenders.length ≤ n, 자리 번호는 서로 겹치지 않습니다n 이하이며, 배열이 번호순으로 정렬돼 있지 않을 수 있습니다시간 복잡도 목표: O(N)
▶ 실행은 기록 없이 채점만, 제출은 결과가 진행률·오답노트에 기록됩니다.