
😎풀이
forts 순회
1-1. forts[i]가 우리 기지(1)라면, 앞과 뒤 순찰을 시작
1-2. 현재 지점부터 시작 지점까지 순회
1-3. 현재 지점부터 종료 지점까지 순회
1-4. 빈 요새(0)라면, 점령 가능 카운팅
1-5. 상대 기지(-1) 혹은 우리 기지를 탐색한다면 탐색 중 발견한 모든 요새를 점령할 수 있다.
- 최대 점령 가능 요새의 수 반환. 최대 점령 가능 요새의 수 반환
function captureForts(forts: number[]): number {
let maxCapture = 0
for(let i = 0; i < forts.length; i++) {
if(forts[i] !== 1) continue
let forward = 0
let backward = 0
for(let j = i - 1; j >= 0; j--) {
if(forts[j] === 0) {
backward++
continue
}
if(forts[j] === -1) maxCapture = Math.max(maxCapture, backward)
break
}
for(let j = i + 1; j < forts.length; j++) {
if(forts[j] === 0) {
forward++
continue
}
if(forts[j] === -1) maxCapture = Math.max(maxCapture, forward)
break
}
}
return maxCapture
};