Algorithm/Programmers 입문

[프로그래머스 코딩기초 트레이닝] 배열 만들기 1 (JAVA)

JunFe 2023. 11. 10. 22:15
반응형

문제 설명

정수 n과 k가 주어졌을 때, 1 이상 n이하의 정수 중에서 k의 배수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.


제한사항

 

1 ≤ n ≤ 1,000,000

1 ≤ k ≤ min(1,000, n)


입출력 예

n k result
10 3 [3,6,9]
15 5 [5,10,15]

입출력 예 설명

입출력 예 #1

1 이상 10 이하의 3의 배수는 3, 6, 9 이므로 [3, 6, 9]를 return 합니다.

 

입출력 예 #2

1 이상 15 이하의 5의 배수는 5, 10, 15 이므로 [5, 10, 15]를 return 합니다.


풀이

-> n을 k로 나눈 몫 크기의 answer 배열을 선언하고, 반복문을 통해 i를 1부터 n까지 돌리며 k로 나눈 나머지가 0인 k의 배수를 찾아 answer 배열에 담아준다. 이 때, count라는 변수를 0으로 놓고 조건문이 돌면 answer의 index값으로 사용하고 1씩 증가시켜준다.


코드

class Solution {
    public int[] solution(int n, int k) {
        int[] answer = new int[n/k];
        int count = 0;
        for(int i=1;i<=n;i++){
            if(i%k==0){
                answer[count]=i;
                count++;
            }
        }
        return answer;
    }
}
반응형