ෆ ⋆ ₊ ゚ ☽ * ₊ ⋆

학교/JavaScript

[코딩테스트] 홀수

우당탕가윤 2023. 6. 26. 21:55

2023학년도 JavaScript 수업 중 진행한 코딩테스트 문제입니다.


■ 문제 설명

문제 : 7개의 수가 주어질 때, 이들 중 홀수인 자연수들만 모두 골라 그 합을 구하고, 고른 홀수들중에서 최소값을 찾는 프로그램을 작성하시오. 예를 들어 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지면 이들 중 홀수는 77, 41, 53, 85 이므로 그 합은 77 + 41 + 53 85 = 256이고, 이들 홀수 중 최소값은 41이 된다.

 

입력 : 자연수 7개가 주어진다. 주어지는 자연수는 100보다 작으며, 홀수가 한 개 이상 반드시 존재한다.

출력 : 첫 번째 줄에 홀수들의 합과 최소값을 출력한다.

 

입력 예시 : 12 77 38 41 53 92 85

출력 예시 : 256 41


■ 나의 코드

function solution() {
  let answer = [];
  let sum = 0, min = Number.MAX_SAFE_INTEGER; // sum 값을 0으로, min을 js에서 표현할 수 있는 가장 큰 정수로 초기화
  for(let x of arr) {
    if(x%2 == 1) { // 나머지가 1(홀수)일 경우
      sum += x; // sum에 x 누적
      if(x < min) min = x; // min보다 x가 더 작다면 min에 x 대입
    }
  }
  answer.push(sum); // answer[0] = sum
  answer.push(min); // answer[1] = min
  
  return answer;
}
arr = [12, 7, 38, 41, 53, 92, 85];
console.log(solution(arr)); // 256 41