https://leetcode.com/problems/jump-game
🧐 이동할 수 있는 인덱스 범위인지 검사하자
➡️ 이동할 수 있는 경우의 수가 있는지, 즉 가능성을 범위로 표현할 수 있다.
최대 이동 가능 인덱스 = 0
for(인덱스 = 0 to 주어진 배열의 길이){
if(인덱스 > 최대 이동 가능 인덱스){
return false
}
if(현재 이동 가능 인덱스 > 최대 이동 가능 인덱스){
최대 이동 가능 인덱스 = 현재 이동 가능 인덱스}
}
return true
public boolean canJump(int[] nums) {
int reachable = 0;
for(int i = 0; i < nums.length; i ++) {
if(i > reachable) return false;
reachable = Math.max(reachable, i + nums[i]);
}
return true;
}
나의 코드와 동일하다.
Math.max(a, b)
를 활용하면 if문 없이도 바로 최대값을 갱신할 수 있다.