특이한 정렬, 세 개의 소수 문제

GUNHEE LEE·2024년 1월 29일
0

coding_test

목록 보기
1/6

프로그래머스

문제 - 특이한 정렬

  • 정렬에 우선순위 부여하기
  • sorted(array, key=lambda x:[조건1, 조건2 …])
  • sorted는 기존 배열에 영향을 주지 않는다.

백준

문제 - 세 개의 소수 문제

만약 어떤 숫자가 소수인지 알고 싶다면 제곱수를 사용한다.

  • 2부터 루트 n까지의 수 중에서 n이 나누어 떨어진다면, n은 소수가 아니다.
  • O(루트 n)

만약 어떤 숫자 이하의 모든 소수를 알고싶다면 에라토스테네스의 체를 사용한다.

  • 2부터 루트 n + 1 까지 탐색하며, 자기 자신을 제외한 배수를 모두 제거한다.
  • 이후 지워지지 않은 수들이 n 이하의 소수이다.
  • O(NlogN)
  • ‘5보다 큰 홀수’ 로 풀이 시도했으나 아이디어가 틀림.
  • ‘3개 소수의 합’ 으로 나타내야 하며 이는 삼중 반복문으로 구현한다.
  • 세 가지 원소를 오름차순으로 정렬하려면 key = lambda x: (x[0], x[1], x[2]) 를 사용한다.
  • 리스트에 *를 사용하면 원소들을 unpacking 할 수 있다.

profile
새싹 개발자

0개의 댓글