본문 바로가기
Study/코딩테스트 연습

프로그래머스 lv1 - 나머지가 1이 되는 수

by prlkt5200 2024. 9. 30.
반응형

 

아래는 제가 풀어놓은 예제입니다. 두 가지 방식으로 풀어보았습니다.

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

 

import java.util.ArrayList;
class Solution {
    public int solution(int n) {
            int answer =0;
            ArrayList<Integer> arrayList = new ArrayList<>();
        for(int i = 1; i< n; i++){
            if(n%i == 1){
            arrayList.add(i);             
            arrayList.sort(null);            
            }
        }
        
        return answer = arrayList.get(0);
    }
}

 

아래는 다른 사람의 풀이입니다. 다양한 풀이를 접할 수 있어 좋은 것 같습니다 ㅎㅎ

import java.util.stream.IntStream;

class Solution {
    public int solution(int n) {
        return IntStream.range(2, n).filter(i -> n % i == 1).findFirst().orElse(0);
    }
}

 

class Solution {
    public int solution(int n) {
        int answer = 1;

        while(n % answer != 1){
            answer++;
        }
        return answer;
    }
}
반응형