[프로그래머스] DAY 6. 마지막 두 원소 | 수 조작하기 1 | 수 조작하기 2 | 수열과 구간 쿼리 3 | 수열과 구간 쿼리 2
|2024. 9. 8. 03:39
🔗 마지막 두 원소
✨ 전체코드 ✨
class Solution {
public int[] solution(int[] num_list) {
int len = num_list.length;
int[] answer = new int[len+1];
for(int i=0; i<len; i++){
answer[i] = num_list[i];
}
answer[len] = num_list[len-1] > num_list[len-2] ? num_list[len-1] - num_list[len-2] : num_list[len-1] * 2;
return answer;
}
}
🌀 성능
- 메모리 : 83.6 MB
- 시간 : 0.03 ms
🔗 수 조작하기 1
✨ 전체코드 ✨
import java.util.*;
class Solution {
public int solution(int n, String control) {
int answer = n;
for(char ch : control.toCharArray()){
switch(ch){
case 'w': answer += 1; break;
case 's': answer -= 1; break;
case 'd': answer += 10; break;
case 'a': answer -= 10; break;
}
} return answer;
}
}
🌀 성능
- 메모리 : 81.6 MB
- 시간 : 4.46 ms
🔗 수 조작하기 2
✨ 전체코드 ✨
class Solution {
public String solution(int[] numLog) {
String answer = "";
for(int i=0; i<numLog.length-1; i++){
int num = numLog[i+1] - numLog[i];
switch(num){
case 1 : answer += "w"; break;
case -1 : answer += "s"; break;
case 10 : answer += "d"; break;
default : answer += "a"; break;
}
} return answer;
}
}
🌀 성능
- 메모리 : 376 MB
- 시간 : 1102.24 ms
🔗 수열과 구간 쿼리 3
✨ 전체코드 ✨
class Solution {
public int[] solution(int[] arr, int[][] queries) {
int[] answer = new int[arr.length];
for(int i=0; i<arr.length; i++){
answer[i] = arr[i];
}
for(int[] query : queries){
int i = query[0];
int j = query[1];
int tmp = answer[i];
answer[i] = answer[j];
answer[j] = tmp;
} return answer;
}
}
🌀 성능
- 메모리 : 82.4 MB
- 시간 : 0.10 ms
🔗 수열과 구간 쿼리 2
✨ 전체코드 ✨
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[][] queries) {
int[] answer = new int[queries.length];
Arrays.fill(answer, 1000001);
for(int i=0; i<queries.length; i++){
int s = queries[i][0];
int e = queries[i][1];
int k = queries[i][2];
for(int j=s; j<=e; j++){
if(arr[j] > k){
answer[i] = Math.min(answer[i], arr[j]);
}
}
if(answer[i] == 1000001) answer[i] = -1;
} return answer;
}
}
🌀 성능
- 메모리 : 75.2 MB
- 시간 : 2.17 ms
'Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스] Python 개발자 찾기 - MySQL (0) | 2024.09.11 |
---|---|
[프로그래머스] 동물의 아이디와 이름 - MySQL, Oracle (0) | 2024.09.10 |
[프로그래머스] 두 원 사이의 정수 쌍 (0) | 2024.08.31 |
[프로그래머스] 연속된 부분 수열의 합 (0) | 2024.08.31 |
[프로그래머스] DAY 5. 코드 처리하기 | 등차수열의 특정한 항만 더하기 | 주사위 게임 2 | 원소들의 곱과 합 | 이어 붙인 수 (0) | 2024.08.27 |