analogcoding

algorithm 연습7 본문

Study JS for me/Algorithm

algorithm 연습7

be well 2019. 4. 28. 18:56

문제. 인자로 받는 배열의 요소가 이 전 요소들의 총합보다 큰 수로만 이루어져있으면 true , 아니면 false 를 리턴.

 

Ex) input : [1,3,6,15,32,70]   =>  output : true

       input : [1,2,4,5,7,12,15]    =>  output : false

 

해결방안.

 

1. 배열의 요소와 그 앞전 요소의 총합을 비교.

2. for문과 sum을 사용.

3. Boolean 값 리턴.

 

sum 이라는 누적값을 받을 변수를 설정하고 정해진 요소 전까지의 누적값과 그 다음 요소의 값을 비교해서 Boolean 값으로 리턴한다.

function arrSum(arr){

  let sum = 0;
  for(let i = 0 ; i < arr.length; i++){
    sum += arr[i]
    if(sum > arr[i+1]){
      return false;
    }
  }
 return true;
}

 

 

결과확인

 

'Study JS for me > Algorithm' 카테고리의 다른 글

recursion 예제 연습  (0) 2019.05.02
Recursion 정의 + 예제  (0) 2019.04.29
algorithm 연습6  (0) 2019.04.28
algorithm 연습5  (0) 2019.04.27
algorithm 연습4  (0) 2019.04.27
Comments