1112 효율적으로 코드를 쓰고싶다

냐하호후·2021년 11월 12일
0

문제

7개의 자연수를 고른후 홀수를 골라낸다. 그 중 최솟값을 골라낸다.

내가 쓴 코드

function solution(arr){
                let odd = []
               //홀수만 고르기 -> 최소값 찾아서 리턴
               let sorted = arr.sort()
               for(let i= 0; i < sorted.length; i++){
                   if(sorted[i] % 2 !== 0){
                       odd.push(sorted[i])
                   }
               }
               return odd[0]
            }
            
            arr=[12, 77, 38, 41, 53, 92, 85];
            console.log(solution(arr));

답안 코드

 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));

느낀 점

평소에 쓰던 코드 습관이 남아있어서 그런지 머릿속 구석에 저장되어있는 아는 방법인데도 잘 안쓰게 된다. 어떻게하면 더 간결하고 가독성좋은 코드를 쓸 수 있을지 고민하자!

profile
DONE is better than PERFECT

0개의 댓글