문제 설명
정수 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] |
class Solution {
public int[] solution(int n, int k) {
int[] answer = new int[n / k];
int index = 0;
for (int i = k; i <= n; i += k) {
answer[index++] = i;
}
return answer;
}
}
answer 배열을 생성합니다. n 이하의 정수 중에서 k의 배수를 고르는 것이므로 n / k만큼의 크기로 생성합니다. answer의 index를 지정할 변수를 생성합니다.
for문이 k부터 n까지 순회합니다. k의 배수를 구하는 문제이므로 i += k로 i가 k만큼 증가합니다. answer 배열의 0번(index)부터 i가 순서대로 할당됩니다. 작은 수부터 증가하여 순서대로 추가되고 있으므로 별도의 정렬은 하지 않았습니다.
'프로그래머스 > Lv. 0(코딩 기초 트레이닝)' 카테고리의 다른 글
[프로그래머스 코딩테스트] 첫 번째로 나오는 음수(Java) (0) | 2023.04.30 |
---|---|
[프로그래머스 코딩테스트] 카운트 다운(Java) (0) | 2023.04.30 |
[프로그래머스 코딩테스트] 문자열의 앞의 n글자(Java) (0) | 2023.04.29 |
[프로그래머스 코딩테스트] 문자열 뒤의 n글자(Java) (0) | 2023.04.29 |
[프로그래머스 코딩테스트] 9로 나눈 나머지(Java) (0) | 2023.04.29 |