일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Notice
Recent Posts
Recent Comments
Link
Tags
- cursor 설치
- 배열 순환 문제 공식
- 숨어있는 숫자의 덧셈 (1) 자바
- 자바 팩토리얼
- 왓챠피디아 클론 코딩
- 펙토리얼
- 스프링 부트 프로젝트 세팅
- 접속 url 출력
- 오블완
- 정보처리기사 필기
- 프로그래머스 문자열 정렬하기(1)
- 프로그래머스
- 자바 합성수 찾기
- 스프링부트 의존성 설정
- 소인수분해 구하는 공식
- 정처기 필기 벼락치기
- 피그마 썸네일
- cursor 우클릭 메뉴
- 프로그래머스 공 던지기 게임
- 자바 소인수분해
- spring boot 배너 설정
- 비전공자 정처기 필기
- 정보처리기사 필기 벼락치기
- string과 stringbuilder 성능 최적화
- 스프링 부트 배너 설정
- 배열 순환
- 티스토리챌린지
- 경우의 수 자바
- 배열 순환 자바
- 비전공자 정보처리기사 필기
Archives
- Today
- Total
여름 언덕에서 배운 것
[0단계] 배열 만들기 3 본문
** 좀 더 좋은 방법이 없을까 하다가
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[][] intervals) {
List<Integer> newArr = new ArrayList<>();
for(int i=0; i<intervals.length;i++){
int s = intervals[i][0];
int e = intervals[i][1];
for(int j=s; j<e+1; j++){
newArr.add(arr[j]);
}
}
int [] answer = new int [newArr.size()];
for(int k= 0 ; k< answer.length; k++){
answer[k] = newArr.get(k);
}
return answer;
}
}
** 다른 사람 풀이
두번째 풀이는 고정된 배열을 사용해 불필요한 오버헤드를 줄일 수 있다고 한다.
import java.util.ArrayList;
class Solution {
public int[] solution(int[] arr, int[][] intervals) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = 0; i < intervals.length; i++) {
for (int j = intervals[i][0]; j <= intervals[i][1]; j++) {
list.add(arr[j]);
}
}
int[] answer = new int[list.size()];
for (int i = 0; i < list.size(); i++) {
answer[i] = list.get(i);
}
return answer;
}
}
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[][] intervals) {
int totalLength = 0;
for (int[] interval : intervals) {
totalLength += (interval[1] - interval[0] + 1);
}
int[] answer = new int[totalLength];
int idx = 0;
for (int[] interval : intervals) {
for (int i = interval[0]; i <= interval[1]; i++) {
answer[idx++] = arr[i];
}
}
return answer;
}
}
728x90
'가랑비에 옷 젖는 줄 모른다 💻 > 🌰코테문풀_꾸준히' 카테고리의 다른 글
[0단계]배열 조각하기 (0) | 2025.01.23 |
---|---|
[0단계] 2의 영역 (1) | 2025.01.23 |
[0단계]글자 지우기 (0) | 2025.01.22 |
[0단계] 문자 개수 세기 (1) | 2025.01.22 |
[0단계] qr code (0) | 2025.01.21 |