PS/LV.1 프로그래머스 문제
[프로그래머스] LV.1 x만큼 간격이 있는 n개의 숫자 - 자바 [11/80]
yaho!!
2024. 7. 16. 23:36
💬 문제 설명
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
🚫 제한 사항
- x는 -10000000 이상, 10000000 이하인 정수입니다.
- n은 1000 이하인 자연수입니다.
📢 입출력 예
📃 제출 코드
class Solution {
public long[] solution(int x, int n) {
long[] answer = new long[n];
for (int i = 0; i < answer.length; i++) {
answer[i] = (long) x * (i + 1);
}
return answer;
}
}
✏ 해결방법 & 배운점
배열 선언 및 초기화
- 문제에서 숫자 `n`개가 포함된 리스트를 다루기로 했으므로, 길이가 `n`인 `answer` 배열을 초기화했습니다.
배열 값 설정
- for문을 이용하여 `answer` 배열의 길이만큼 반복합니다.
- `x` 와 (`i` + 1) 을 곱한 결과를 `answer[i]`에 저장합니다.
- x = 5 , n = 3 일경우
- answer[0] = 5 * (0 + 1)
- answer[1] = 5 * (1 + 1)
- answer[2] = 5 * (2 + 1)
- 숫자와 반복횟수가 늘어나면 오버플로우가 발생할 수 있으므로 `x`를 long타입으로 형변환하였습니다.