공부/알고리즘 공부

최솟값 구하기

먼지투성이밤 2022. 9. 25. 20:10

❓ 문제설명

길이가 서로 다른 A, B, C 세 개의 막대 길이가 주어지면 이 세 막대로 삼각형을 만들 수 있으면 “YES"를 출력하고, 만들 수 없으면 ”NO"를 출력한다.

 

❓ 입력설명

첫 번째 줄에 100이하의 서로 다른 A, B, C 막대의 길이가 주어진다.

 

❓ 출력설명

첫 번째 줄에 “YES", "NO"를 출력한다.

 

💡 풀이

<script>
      function solution(arr) {
        let answer;
        let min = Number.MAX_SAFE_INTEGER; // 매우 큰 랜덤 정수값이 min으로 안정적으로 들어감
        for (let i = 0; i < arr.length; i++) {
          if (arr[i] < min) {
            min = arr[i];
          }
          // min에 매우 큰 값을 넣어놨기 때문에 arr의 첫번재 값이 무조건 참이 된다
          // 그 후에 값을 하나씩 비교 해 보면서 더 작은 수가 answer가 되고, 결국 제일 작은 값이 answer가 된다.
        }
        min = answer;
        return answer;
      }
 </script>
<script>
let arr = [5, 7, 1, 3, 2, 9, 11];
      console.log(solution(arr));

         내장함수(Math)로 최솟값, 최댓값 구하기
         function solution(arr) {
             let answer = Math.min(...arr); //최솟값 구하기
             let answer = Math.min(...arr); //최댓값 구하기
            //Math.min(안에는 원래 인자만 들어가기 때문에) array를 쓰려면 앞에 ... (전개연산자) 를 꼭 붙인다.
            return answer;
       }
    </script>