알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄
https://programmers.co.kr/learn/courses/30/lessons/87389
코딩테스트 연습 - 나머지가 1이 되는 수 찾기
자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입
programmers.co.kr
https://programmers.co.kr/learn/courses/30/lessons/12906
코딩테스트 연습 - 같은 숫자는 싫어
배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은
programmers.co.kr
Think🤔
1. 나눈 수가 1이 되는 데 제일 작은 것
2. 같은 숫자 나오면 하나만 저장 되게하는 문제
ArrayList 없이 처음에 배열을 생성하려니깐 배열의 크기 값을 모르기 때문에
먼저, 중복된 값이 없는 tmpArr 을 만들고 , 그것을 배열로 옮겨 담아서 리턴해준다.
Solution✍
class Solution {
public int solution(int n) {
int answer = n;
for(int i=1; i<=n; i++){
if(n % i == 1){
answer = Math.min(answer, i);
}
}
return answer;
}
}
import java.util.*;
public class Solution {
public int[] solution(int []arr) {
ArrayList<Integer> tmpArr = new ArrayList();
int saveNum = Integer.MIN_VALUE;
for(int i=0; i<arr.length; i++){
if(arr[i] != saveNum){
saveNum = arr[i];
tmpArr.add(arr[i]);
}
}
int[] answer = new int[tmpArr.size()];
for(int i=0; i<answer.length; i++){
answer[i] = tmpArr.get(i);
}
return answer;
}
}
Review🤩
호오잇!
'Algorithm' 카테고리의 다른 글
[프로그래머스] 나누어 떨어지는 숫자 배열 (0) | 2022.05.06 |
---|---|
[프로그래머스] 완주하지 못한 선수 (0) | 2022.03.16 |
[백준] 추월 (0) | 2022.03.08 |
[백준] 연속부분최대곱 (0) | 2022.03.01 |
[백준] 설탕 배달 (0) | 2022.02.28 |