난이도 : Level. 2
언어 : Javascript
출제 내역 : 연습문제
숫자의 표현
- 어떤 자연수를 연속된 숫자로 표현하기
function solution(n) {
let answer = 0;
let num = 1;
while (num <= n) {
let sum = 0;
for (let i = num; i <= n; i++) {
sum += i;
if (sum === n) {
answer++;
break;
} else if (sum > n) {
break;
}
}
num++;
}
return answer;
}
반복문과 while을 활용해서 문제를 해결해 봤습니다.
효율성 측면에서 떨어질 줄 알았으나 통과가 됐네요 ㅎㅎ
최솟값 만들기
- 두개의 배열에서 곱한 수를 더한 것 중 최솟값 찾기
function solution(A, B) {
const arrA = A.sort((a, b) => a - b);
const arrB = B.sort((a, b) => b - a);
let answer = 0;
for (let i = 0; i < arrA.length; i++) {
answer += arrA[i] * arrB[i];
}
return answer;
}
A 배열은 오름차순으로 B 배열은 내림차순으로 정렬해서
각 배열의 인덱스별로 곱해서 더한 값을 도출한다