JS알고리즘 배열탐색 풀이모음

dowon kim·2023년 9월 18일

나의풀이

//내장함수를에 매개변수로 받은 배열의 요소를 구조분해할당으로 대입하면 계산가능 
function solution(n) {
  return Math.max(...n);
}

console.log(solution([3,1,2]));

나의풀이

function visibleStudentsCount(n,arr) {
  //순차적으로 배열을 돌며 최대 값을 갱신한다
  //현재 최대값보다 같거나 작은 수에 대한 카운팅
  //반환
  let num=0;
  let cnt=0;
  arr.forEach((a)=>{
    if(a>num){cnt++;num=a;}
  })
  return cnt;
}

나의풀이

function compare(a,b){
  return a===b? "D" : a-b===1 ? "A" : "B";
}

function solution(n,arr1,arr2) {
  //차이가 1일때 이기고 2일때 지며 0일때 비긴다.
  //같은 인덱스를 탐색하도록 두배열을 반복문으로 조회한다.
  return arr1.map((a,i)=>compare(a,arr2[i]))
}

나의풀이

function solution(n,arr) {
//가산점 체인을 기록하는 변수가 필요함
  //체인이 끊길때 다시 0으로 초기화
  let chain=0;
  let result=0;
  for (let i = 0; i < n; i++) {
    if(arr[i]===0)chain=0;
    result+=arr[i]+chain;
    if(arr[i]!==0)chain++;
  }
  return result
}
profile
The pain is so persistent that it is like a snail, and the joy is so short that it is like a rabbit's tail running through the fields of autumn

0개의 댓글