- arr[i]는 arr[0] ~ arr[i-1]까지의 합보다 커야한다.
- 이 문제의 핵심은 sum을 arr의 첫번째 값으로 세팅해주고 for문을 첫번째 인덱스 부터 돌면서 검사한다.
function isBiggerThanPrevious(arr) {
let sum = arr[0]; // 합을 arr의 첫번째 인덱스 값으로 세팅해준다.
for(let i=1; i<arr.length; i++) {
// arr[i]가 sum보다 크거나 같으면 false로 리턴한다.
if(arr[i] <= sum) {
return false;
}
// if문을 타지 않은 경우 sum에 arr[i]를 더해줘서 arr[0]~arr[i-1]까지 누적시킨다.
sum = sum + arr[i];
}
// for문에서 false로 걸러지지 않은경우는 true를 리턴한다.
return true;
}
- sum을 0으로 세팅해주고 arr[i+1]이 sum보다 크거나 같은 경우를 확인해줘도 된다
- sum을 0으로 세팅해주나 arr[0]으로 세팅해주나 똑같기 때문에 그냥 취향에 따라 코딩하면 되겠다.
function isBiggerThanPrevious(arr) {
let sum = 0; // 합을 0으로 세팅해준다.
for(let i=0; i<arr.length; i++) {
// 처음 sum이 0이기 때문에 sum에다가 arr[i]를 더해줘서 sum = arr[i]식으로 세팅해준다.
sum = sum + arr[i];
// arr[i+1]가 sum보다 크거나 같으면 false로 리턴한다.
if(arr[i+1] <= sum) {
return false;
}
}
// for문에서 false로 걸러지지 않은경우는 true를 리턴한다.
return true;
}