코딩테스트/Programmers Level 1
20일차. 나머지가 1이 되는 수 찾기
자유로운영혼이다냥
2023. 12. 13. 20:20
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/87389
문제
정답
def solution(n):
answer = 2
while (n-1)%answer:
answer += 1
return answer
풀이과정
나누어서 1이 되는 수는 1 뺸수로 나누면 나누어 떨어진다. 그러므로 최솟값 2부터 그 수가 나올떄까지 1씩 더해가면서 나누어 떨어지면 0(False)가 나오며 답을 제출한다.
다만 답이 없는경우에는 무한반복에 빠지기 쉽고 1을 뺀 숫자가 높은 수치의 소수이면 굉장히 리소스가 많이 들어간다. 그러므로 효율이 좋진 않다.