프로그래머스 - 나머지가 1이 되는 수 찾기
문제 : https://programmers.co.kr/learn/courses/30/lessons/87389
코딩테스트 연습 - 나머지가 1이 되는 수 찾기
자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입
programmers.co.kr
알고리즘 공부는 처음이어서 모르는 부분이 많지만 앞으로 조금씩 하다 보면 어느 순간 실력이 좋아질 날이 올 거라고 믿습니다.
github : https://github.com/delight-HK3/programmers_study/tree/main/programmers
GitHub - delight-HK3/programmers_study: It is a repository for storing programmers problems.
It is a repository for storing programmers problems. - GitHub - delight-HK3/programmers_study: It is a repository for storing programmers problems.
github.com
(programmers_87389.java 파일 입니다.)

문제분석
문제는 이렇습니다, n이 매개변수로 주어졌을 때 n을 x로 나누어 나머지가 1이 되도록 하는 x를 찾는 함수를 코딩해야 하는 문제입니다, 저는 x값을 찾기 위해 for문을 사용해서 n보다 1 낮은 값만큼 반복하면서 if문 조건으로 n을 x로 나누었을 때 나머지가 1이 나오면 x의 값을 리턴하는 구조로 코딩했습니다.
문제풀이
class Solution {
public int solution(int n) { // 매개변수 n
int answer = 0; // 리턴할 변수 answer
for(int x = 1; x < n; x++){ // x를 n보다 1낮은 만큼 반복
if(n % x == 1){ // 만약 n을 x로 나누었을 때 나머지가 1이 나오는 경우
answer = x; // x의 값을 answer에 저장
System.out.printf("%d를 나누어서 나머지가 1이 나오는 값 : %d",n,x);
// x와 n의 값을 출력
break; // 루프 탈출
}
} // for end
return answer; // answer값을 리턴
}
}
public class programmers_87389 {
public static void main(String[] args) {
Solution sol = new Solution();
// sol이름의 참조 변수 선언과 동시에 인스턴스를 저장
sol.solution(10);
// Solution 클래스의 멤버 메서드 solution에 매개변수 10입력
}
}