Skip to content

Conversation

@JooKangsan
Copy link
Collaborator

정렬

md 파일로 추가했습니다!

📌 푼 문제

문제이름 문제링크
정렬하기 https://school.programmers.co.kr/learn/courses/30/lessons/120850
특이한 정렬 https://school.programmers.co.kr/learn/courses/30/lessons/120880
진료 순서 정하기 https://school.programmers.co.kr/learn/courses/30/lessons/120835
등수 매기기 https://school.programmers.co.kr/learn/courses/30/lessons/120882
두 개 뽑아서 더하기 https://school.programmers.co.kr/learn/courses/30/lessons/68644
삼총사 https://school.programmers.co.kr/learn/courses/30/lessons/131705


📝 간단한 풀이 과정

정렬하기

function solution(my_string) {
    var answer = [];
    for (let char of my_string) {
        if (!isNaN(parseInt(char))) {
            answer.push(parseInt(char));
        }
    }
    return answer.sort((a, b) => a - b);
}

특이한 정렬

function solution(numlist, n) {
  let queue = [...numlist];
  let result = [];
  
  queue.sort((a, b) => {
      const A = Math.abs(n - a);
      const B = Math.abs(n - b);
      if(A === B) {
          return b - a;
      }
      return A - B;
  });
  
  while(queue.length > 0) {
      result.push(queue.shift());
  }
  
  return result;
}

진료 순서 정하기

function solution(emergency) {
  var answer = [];
  const indexed = emergency.map((value, index) => ({ value, index }));
  indexed.sort((a, b) => b.value - a.value);
  for (let i = 0; i < indexed.length; i++) {
      answer[indexed[i].index] = i + 1;
  }
  return answer ;
}

등수 매기기

function solution(score) {
  const sum = score.map((el) => (el[0] + el[1]));
  let sortedSum = sum.slice().sort((a, b) => b - a);

  return sum.map((el) => sortedSum.indexOf(el) + 1);
}

두 개 뽑아서 더하기

function solution(numbers) {
  const result = new Set();
  
  for(let i = 0; i < numbers.length; i++) {
      for(let j = i + 1; j < numbers.length; j++) {
          result.add(numbers[i] + numbers[j]);
      }
  }
  
  return [...result].sort((a, b) => a - b);
}

삼총사

function solution(number) {
  var answer = 0;
  const n = number.length;
  for (let i = 0; i < n - 2; i++) {
      for (let j = i + 1; j < n - 1; j++) {
          for (let k = j + 1; k < n; k++) {
              if (number[i] + number[j] + number[k] === 0) {
                  answer++;
              }
          }
      }
  }
  return answer;
}

@JooKangsan JooKangsan self-assigned this Mar 13, 2025
@JooKangsan JooKangsan requested review from gramy159 and yulrang March 13, 2025 12:55
@JooKangsan JooKangsan merged commit a4db650 into main Mar 20, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants