인프런 커뮤니티 질문&답변

붕붕님의 프로필 이미지
붕붕

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 졸업선물

if를 중첩으로 사용

작성

·

130

0

function solution(arr,m){
                let answer=0;
                let n=arr.length;
                arr = arr.sort((a,b)=>(a[0]+a[1])-(b[0]+b[1]));
 
                for(let i=0; i<n; i++){
                    let money = m-(arr[i][0]/2)+(arr[i][1]);
                    let cnt = 1;
                    for(let j=0; j<n; j++){
                        let tot = arr[j][0]+arr[j][1];
                        if(arr[i]!==arr[j]){
                            if(money - tot < 0){
                                break;
                            }
                            if(money - tot >= 0){
                                money-=tot;
                                cnt++;
                            }
                        }
                    }
                    answer=Math.max(answer, cnt);
                }
               
                return answer;
               
            }

            let arr=[
                [6,6],
                [2,2],
                [4,3],
                [4,5],
                [10,3]
            ]
           
            console.log(solution(arr,28));
 
이렇게 풀었는데
if(i !== j) 안에 넣는 방식보다는
&&연산자를 사용하는 방식이 더 좋을까요?
 

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

위에 코드는 괜찮은 것 같습니다. 굳이 && 연산으로 하지 않아도 될 것 같습니다,

붕붕님의 프로필 이미지
붕붕

작성한 질문수

질문하기