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
'학교 > JavaScript' 카테고리의 다른 글
[코딩테스트] 일곱난쟁이 (0) | 2023.06.26 |
---|---|
[코딩테스트] 10부제 (0) | 2023.06.26 |
[코딩테스트] 최소값 구하기 (0) | 2023.06.26 |
[코딩테스트] 1부터 N까지 합을 출력하기 (0) | 2023.06.26 |
[코딩테스트] 연필 개수 (0) | 2023.06.26 |