📌강의 정리
홀수들만 구하고 그 홀수들의 합을 출력한다.
먼저 arr배열을 넘긴다.
탐색해서 홀수를 넘겨야한다.
for문에서 i가 아니라 of 구문을 써보자.
for(let x of arr)
변수를 길게 의미있게 하지말고 배울때는 간단하게 하자.
ex) tmp, a, x, result
면접관앞에서는 변수이름 잘 정해서 하자.
arr의 값들을 하나씩 x가 받는다.
코딩인터뷰할때 ==과 ===중에서 하나로 통일해서 해야한다.
===은 타입까지 비교한다.
min은 Number.MAX_SAFE_INTEGER로 초기화한다. 습관을 들여놓자.
+= 이라는 할당연산자를 써서 코드를 간결하게 짜자
answer.push를 써서 answer라는 배열에 sum과 min을 push한다.
이렇게해서 answer를 정의하면 된다.
📌느낀점
새롭게 익숙해져야할 for of를 배웠다 의식적으로 사용하여 익숙해져야겠다.
아니 나머지는 다 비슷하게 가는데 이거 출력을 한 줄씩 띄우라고 해서 나는 숫자를 문자열로 바꿔서 \n 을 써서 두줄로 출력되게 했는데 강사님은 그냥 배열로 답이 [256, 41]로 출력되게 했다... 심화과정 했다고 생각해야지 ㅎㅎ push라는 c언어에서는 상상도 못할 강력한 함수도 의식적으로 잘 써보자.
//나의 코드
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(arr){
let sum=0, min=Number.MAX_SAFE_INTEGER;
let answer=[];
for(let i=0;i<arr.length;i++){
if(arr[i]%2 != 0){
sum+=arr[i];
if(arr[i]<min) min=arr[i];
}
}
String(sum);
String(min);
answer = sum+'\n'+min;
return answer;
}
arr=[12, 77, 38, 41, 53, 92, 85];
console.log(solution(arr));
</script>
</body>
</html>
//강사님 코드
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(arr){
let answer=[];
let sum=0, min=1000;
for(let x of arr){
if(x%2===1){
sum+=x;
if(x<min) min=x;
}
}
answer.push(sum);
answer.push(min);
return answer;
}
arr=[12, 77, 38, 41, 53, 92, 85];
console.log(solution(arr));
</script>
</body>
</html>
'JS 알고리즘 문제풀이 > 섹션 1. 기본문제 풀이' 카테고리의 다른 글
8.일곱난쟁이 (0) | 2022.01.11 |
---|---|
7.10부제 (0) | 2022.01.11 |
[보충] 내장함수로 최솟값, 최댓값 구하기 (0) | 2022.01.11 |
5.최솟값 구하기 (0) | 2022.01.11 |
4.1부터 N까지 합 (0) | 2022.01.11 |