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

서원혁님의 프로필 이미지
서원혁

작성한 질문수

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

12. 마구간 정하기(결정알고리즘)

문제 풀이 마구간정하기

작성

·

156

0

function solution(target,array){
 array.sort((a,b)=>a-b);
 let left = 1;
 let right = array[array.length-1];
 let answer
 while(left<=right){
     let mid = Math.floor((left+right)/2);
     let cnt = 1;
     let start = array[0];
     let result =[]
     for(let  i=1; i<array.length; i++ ){
         let between =array[i]- start;
         if(mid<=between){
             cnt++;
             result.push(between)
             start = array[i];
         }
     }
     if(target === cnt){
        answer = Math.min(...result);
        break
     }else if(target<cnt){
        left = mid +1;
     }else{
        right = mid -1;
     }
 }
 return answer;
}
 
이런식으로 풀어도 괜찮을까요?
 

답변 1

0

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

안녕하세요^^

네. 잘 하신 코드입니다.

서원혁님의 프로필 이미지
서원혁

작성한 질문수

질문하기