728x90
반응형
수열과 구간 쿼리 4
package Day_7;
/**
* 코딩 기초 트레이닝 Day 7
* 수열과 구간 쿼리 4
*/
public class Main1 {
public static void main(String[] args) {
int[] arr = {0, 1, 2, 4, 3};
int[][] queries = {{0, 4, 1}, {0, 3, 2}, {0, 3, 3}};
int[] result = solution(arr, queries);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
}
public static int[] solution(int[] arr, int[][] queries) {
int[] answer = new int[arr.length];
for (int i = 0; i < answer.length; i++) {
answer[i] = arr[i];
}
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 (j % k == 0) {
answer[j] += 1;
}
}
}
return answer;
}
}
배열 만들기 2
package Day_7;
import java.util.LinkedList;
/**
* 코딩 기초 트레이닝 Day 7
* 배열 만들기 2
*/
public class Main2 {
public static void main(String[] args) {
int[] result = solution(5, 555);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
result = solution(10, 20);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
}
public static int[] solution(int l, int r) {
int[] answer = {};
LinkedList<Integer> list = new LinkedList<>();
for (int i = l; i <= r; i++) {
String[] tmp = String.valueOf(i).split("");
int count = 0;
for (String s : tmp) {
if (s.contains("5") || s.contains("0")) {
count++;
}
}
if (count == tmp.length) {
list.add(i);
}
}
answer = list.stream().mapToInt(Integer::intValue).toArray();
if (answer.length == 0) {
answer = new int[]{-1};
}
return answer;
}
}
카운트 업
package Day_7;
import java.util.stream.IntStream;
/**
* 코딩 기초 트레이닝 Day 7
* 카운트 업
*/
public class Main3 {
public static void main(String[] args) {
int[] result = solution(3, 10);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
}
public static int[] solution(int start_num, int end_num) {
return IntStream.range(start_num, end_num + 1).toArray();
}
}
콜라츠 수열 만들기
package Day_7;
import java.util.LinkedList;
/**
* 코딩 기초 트레이닝 Day 7
* 콜라츠 수열 만들기
*/
public class Main4 {
public static void main(String[] args) {
int[] result = solution(10);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
}
public static int[] solution(int n) {
LinkedList<Integer> list = new LinkedList<>();
while (n != 1) {
list.add(n);
if (n % 2 == 0) {
n /= 2;
} else {
n = 3 * n + 1;
}
}
list.add(1);
return list.stream().mapToInt(Integer::intValue).toArray();
}
}
배열 만들기 4
package Day_7;
import java.util.Stack;
/**
* 코딩 기초 트레이닝 Day 7
* 배열 만들기 4
*/
public class Main5 {
public static void main(String[] args) {
int[] arr = {1, 4, 2, 5, 3};
int[] result = solution(arr);
for (int num : result) {
System.out.print(num + " ");
}
System.out.println();
}
public static int[] solution(int[] arr) {
Stack<Integer> stack = new Stack<>();
for (int i = 0; i < arr.length; i++) {
if (stack.isEmpty()) {
stack.push(arr[i]);
} else if (stack.peek() < arr[i]) {
stack.push(arr[i]);
} else if (stack.peek() >= arr[i]) {
stack.pop();
i--;
}
}
return stack.stream().mapToInt(Integer::intValue).toArray();
}
}
728x90
반응형
'📌Back-End > 프로그래머스' 카테고리의 다른 글
Java 프로그래머스 코딩 기초 트레이닝 Day 9 문자열 (0) | 2024.05.05 |
---|---|
Java 프로그래머스 코딩 기초 트레이닝 Day 8 조건문, 문자열 (0) | 2024.05.03 |
Java 프로그래머스 코딩 기초 트레이닝 Day 6 조건문, 반복문 (0) | 2024.05.01 |
Java 프로그래머스 코딩 기초 트레이닝 Day 5 조건문 (0) | 2024.04.30 |
Java 프로그래머스 코딩 기초 트레이닝 Day 4 연산, 조건문 (0) | 2024.04.29 |