[프로그래머스]나머지가 1이 되는 수 찾기

allnight5·2023년 1월 26일
0

프로그래머스

목록 보기
24/73

자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.

파이썬 첫번째 무의미한 성공

def solution(n):
    for i in range(2, n):
        if(n%i) == 1:
            return i

파이썬 다른방법

def solution(n):
    for divisior in range(2,  int((n-1)**.5)) : #2부터~반값까지 
        if (n-1) % divisior == 0: #약수가 있다면
            answer = divisior 
            break #탈출 
    return n-1#약수가 없다면 본인

자바 첫번째 제곱근

Math.sqrt 사용

class Solution {
    public int solution(int n) {
        int answer=0; 
        for(int i=2; i<Math.sqrt(n); i++){
            if((n-1)%i ==0){
                answer  = i;
                return answer;
            }  
        }
        return n-1;
    }
}
profile
공부기록하기

0개의 댓글