본문 바로가기
코딩테스트(알고리즘)/프로그래머스

[프로그래머스] 테이블 해시 함수 (Javascript)

by Cafe Mocha 2023. 2. 13.

https://school.programmers.co.kr/learn/courses/30/lessons/147354?language=javascript 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


알고리즘 : 정렬,구현

 

function solution(data, col, row_begin, row_end) {
      // col을 기준으로 정렬 -> 같으면 첫번째값을 기준으로 정렬
  data.sort((a,b)=>{
    if(a[col-1]===b[col-1]) return b[0]-a[0];
    return a[col-1] - b[col-1];
  })

  // s_i 값 누적할까? 아님 배열에 정리?

  let ans;

  for(let i=row_begin-1;i<row_end;i++){
    let temp = data[i];
    let psum =0;
    for(let j=0;j<temp.length;j++){
      psum += temp[j]%(i+1);
    }
    if(ans===undefined) ans = psum;
    else ans = ans ^ psum;
  }

    return ans;
}