문제
https://school.programmers.co.kr/learn/courses/30/lessons/181892
문제 설명
정수 리스트 num_list와 정수 n이 주어질 때, n 번째 원소부터 마지막 원소까지의 모든 원소를 담은 리스트를 return하도록 solution 함수를 완성해주세요.
풀이
처음 answer 배열의 길이를 num_list 배열의 길이 - n + 1값으로 선언해주었다. 그 후 초기식과 증감식이 2개인 반복문을 순회하면서 answer 배열의 0번 index부터 값을 넣어주었다
코드
class Solution {
public int[] solution(int[] num_list, int n) {
int[] answer = new int[num_list.length - n + 1];
for (int i = 0, j = n ; i < answer.length ; i++, j++) {
answer[i] = num_list[j - 1];
}
return answer;
}
}
또는 Array 클래스의 메서드를 사용하여 아래와도 풀수 있다
import java.util.*;
class Solution {
public int[] solution(int[] num_list, int n) {
int[] a = Arrays.copyOfRange(num_list, n-1, num_list.length);
return a;
}
}
Arrays.copyOf(복사할 배열, 복사할 길이)
Arrays.copyOfRange(복사할 배열, 시작인덱스, 끝인덱스)
위 두개 메서드를 잊지말자..!
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스/Java] Lv.0 - n 번째 원소부터 (0) | 2023.08.27 |
---|---|
[프로그래머스/Java] Lv.0 - flag에 따라 다른 값 반환하기 (0) | 2023.08.27 |
[프로그래머스/Java] Lv.0 - 공배수 (0) | 2023.08.26 |
[프로그래머스/Java] Lv.0 - n의 배수 (0) | 2023.08.25 |
[프로그래머스/Java] Lv.0 - 문자열 곱하기 (0) | 2023.08.23 |