프로그래머스 나머지가 1이 되는 수 찾기 (99클럽 코딩테스트 23일차 TIL)

KIMYEONGJUN·2024년 4월 19일
0
post-thumbnail

목표

99클럽이 마무리 될때까지 열심히 문제를 푸는게 내 목표이다.

문제

내가 생각했을때 문제에서 원하는부분

자연수 n이 매개변수로 주어진다. 
n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성

내가 이 문제를 보고 생각해본 부분

2부터 n-1까지의 모든 숫자를 확인한다.
n을 i로 나눈 나머지가 1이면 i를 리턴한다.
만약 없다면 n-1을 리턴한다. 

코드로 구현

class Solution {
    public int solution(int n) {
        for(int i = 2; i < n; i++) {
            if(n % i == 1) {
                return i;
            }
        }
        return n-1;
    }
}

시간 복잡도는 O(N)

장점
구현이 간단하다.
코드가 직관적이고 이해하기 쉽다.

단점
최악의 경우 전체 입력 범위를 탐색해야 하므로 시간 복잡도가 높다.

마무리

오늘 문제는 정말 간단하게 풀수있는 문제였다. 벌써 문제를 푼지 23일인데 이런 간단한 문제는 조금만 생각해도 바로 답이 나와서 역시 문제는 많이 풀어야된다고 생각하게됐다.

profile
Junior backend developer

0개의 댓글