[Programmers] 나머지가 1이 되는 수 찾기 (Python)

Mino·2021년 10월 15일
0

Programmers

목록 보기
8/8
post-thumbnail

문제

https://programmers.co.kr/learn/courses/30/lessons/87389


접근 방식

  1. n을 x로 나눈 나머지가 1이 되는 x의 수 중 가장 큰 수 x = n - 1
  2. x 가 짝수면 2 return
  3. x가 소수인지 판별하는 과정에서 약수 발견 시 가장 작은 약수 return, x가 소수이면 x return



제출 코드

import math

def solution(n):
    x = n - 1
    if x % 2 == 0:
        return 2
    for i in range(2, int(math.sqrt(x)) + 1):
        if x % i == 0:
            return i
    return x
profile
코린이

0개의 댓글