Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- #프로그래머스 #코딩 #자바 #2의영역
- #프로그래머스 #코딩 #문자열뒤집기 #자바
- #프로그래머스 #코딩 #배열비교하기
- #프로그래머스 #코딩 #l로만들기
- #프로그래머스 #코딩 #자바 #문자열여러번뒤집기
- #프로그래머스 #코딩 #문자열잘라서정렬하기
- #프로그래머스 #자바 #코딩 #무작위로k개의수뽑기
- #프로그래머스 #코딩 #자바 #문자열이몇번등장하는지세기
- #프로그래머스 #코딩 #자바 #왼쪽오른쪽
- #프로그래머스 #코딩 #자바 #수열과구간쿼리1
- #프로그래머스 #코딩 #배열의길이에따라다른연산하기
- #프로그래머스 #자바 #코딩 #배열만들기2
- 코딩 #자바 #조건에맞게수열변환하기2
- #git #commit #message #깃커밋 #메시지 #gitmessage #누락 #reset #mixed #마지막커밋정정하기
- #프로그래머스 #코딩 #자바 #수열과구간쿼리2
- #프로그래머스 #코딩 #배열원소 삭제하기
- #프로그래머스 #코딩 #자바 #수열과구간쿼리3
- #프로그래머스 #코딩 #자바 #문자열묶기
- #프로그래머스 #코딩 #자바 #리스트자르기
- #프로그래머스 #코딩 #x사이의개수
- #프로그래머스
- #JSP #Servlet #제이에스피 #서블릿 #필터 #filter #web.xml #필터예제 #filter예제
- #프로그래머스 #자바 #코딩 #특정문자열로끝나는가장긴부분문자열찾기
- #프로그래머스 #자바 #코딩 #전국대회선발
- #JSP #Servlet #Ajax #에이젝스 #HTML #success #.HTML() #HTML로붙이기
- #프로그래머스 #코딩 #순서바꾸기
- #프로그래머스 #코딩 #배열만들기3
- #JSP #Servlet #제이에스피 #서블릿 #필터 #Filter @WebFilter #어노테이션필터
- #프로그래머스 #코딩 #자바 #빈배열에추가삭제하기
- #프로그래머스 #코딩 #글자지우기 #자바
Archives
- Today
- Total
David의 블로그
프로그래머스 - 리스트 자르기 본문
문제 설명>
정수 n과 정수 3개가 담긴 리스트 slicer 그리고 정수 여러 개가 담긴 리스트 num_list가 주어집니다. slicer에 담긴 정수를 차례대로 a, b, c라고 할 때, n에 따라 다음과 같이 num_list를 슬라이싱 하려고 합니다.
n = 1 : num_list의 0번 인덱스부터 b번 인덱스까지
n = 2 : num_list의 a번 인덱스부터 마지막 인덱스까지
n = 3 : num_list의 a번 인덱스부터 b번 인덱스까지
n = 4 : num_list의 a번 인덱스부터 b번 인덱스까지 c 간격으로
올바르게 슬라이싱한 리스트를 return하도록 solution 함수를 완성해주세요.
내 생각>
정수 n에 분기문을 만들어서 for문에서 쓰려는 시작인덱스 값과 마지막 인덱스 값을 추출한다.
또 나는 n == 4일 때, for문의 증감연산자 값도 지정해줘야 했기에,
최종적으로 시작/마지막 인덱스 값과 증감연산자 값을 초기화 해줬다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
int stIdx = 0;
int endIdx = 0;
int add = 1;
List<Integer> intList = new ArrayList<>();
if (n == 1) {
stIdx = 0;
endIdx = slicer[1];
} else if (n == 2) {
stIdx = slicer[0];
endIdx = num_list.length - 1;
} else if (n == 3) {
stIdx = slicer[0];
endIdx = slicer[1];
} else {
stIdx = slicer[0];
endIdx = slicer[1];
add = slicer[2];
}
for (int i = stIdx; i <= endIdx; i = i + add) {
intList.add(num_list[i]);
}
answer = intList.stream().mapToInt(i -> i).toArray();
System.out.println(Arrays.toString(answer));
|
cs |
for문으로 슬라이스 된 값을 List<>에 담아주고, 마지막으로 List를 array로 형변환 시켜 줬다.
'프로그래밍 > 코딩' 카테고리의 다른 글
프로그래머스 - 왼쪽 오른쪽 (0) | 2024.06.30 |
---|---|
프로그래머스 - 조건에 맞게 수열 변환하기 2 (0) | 2024.06.29 |
프로그래머스 - 리스트 자르기 (0) | 2024.06.29 |
프로그래머스 - 2의 영역 (0) | 2024.06.23 |
프로그래머스 - 문자열 묶기 (0) | 2024.06.23 |