문제 설명
자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 만들어주세요.
제한사항
- 3 <= n <= 1,000,000
입출력 예
n | result |
10 | 3 |
12 | 11 |
내 풀이
n-1 까지 for문을 반복하여 n % i == 1 즉, 나머지가 1이면 해당 수를 return
def solution(n):
for i in range(1, n):
if n % i == 1:
return i
다른 사람 풀이
n을 x로 나눈 나머지가 1인 값으로 리스트를 생성
[0] 을 통해 리스트의 첫 번째 요소를 가져와 반환
def solution(n):
return [x for x in range(1,n+1) if n%x==1][0]
728x90
'코딩테스트' 카테고리의 다른 글
[프로그래머스/파이썬] x만큼 간격이 있는 n개의 숫자 (0) | 2022.09.19 |
---|---|
[프로그래머스/파이썬] 문자열을 정수로 바꾸기 (0) | 2022.09.19 |
[프로그래머스/파이썬] 하샤드 수 (0) | 2022.09.18 |
[프로그래머스/파이썬] 정수 내림차순으로 배치하기 (0) | 2022.09.18 |
[프로그래머스/파이썬] 문자열 내 p와 y의 개수 (0) | 2022.09.18 |