
import java.util.*;
class Solution {
public String[] solution(String myStr) {
List<String> answer = new ArrayList<>();
myStr = myStr.replace("a"," ");
myStr = myStr.replace("b"," ");
myStr = myStr.replace("c"," ");
String[] list = myStr.split(" ");
for (String i : list)
if (!i.equals(""))
answer.add(i);
if (answer.size()==0) answer.add("EMPTY");
return answer.toArray(new String[0]);
}
}
a,b,c를 구분자로 사용하여 매개변수 문자열을 a,b,c로 나누어 배열에 담아 리턴하는 문제

import java.util.*;
class Solution {
public int[] solution(int[] arr) {
ArrayList<Integer> list = new ArrayList<>();
for (int num : arr) {
for (int i = 0; i < num; i++) {
list.add(num);
}
}
int[] result = new int[list.size()];
for (int i = 0; i < list.size(); i++) {
result[i] = list.get(i);
}
return result;
}
}
배열에 있는 숫자를 그 갯수만큼 배열에 담아 리턴하는 문제

import java.util.*;
class Solution {
public int[] solution(int[] arr, boolean[] flag) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = 0; i < flag.length; i++) {
if (flag[i]) {
for (int j = 0; j < arr[i] * 2; j++) {
list.add(arr[i]);
}
} else {
for (int j = 0; j < arr[i]; j++) {
if (!list.isEmpty()) {
list.remove(list.size() -1);
}
}
}
}
int[] answer = new int[list.size()];
for (int i = 0; i < answer.length; i++) {
answer[i] = list.get(i);
}
return answer;
}
}
조건
arr[i] 값과 flag[i] 값을 비교하여

import java.util.*;
class Solution {
public int[] solution(int[] arr) {
ArrayList<Integer> list = new ArrayList<>();
for (int i = 0; i < arr.length; i++) {
if (list.isEmpty()) {
list.add(arr[i]);
} else if (list.get(list.size() -1) == arr[i]) {
list.remove(list.size() -1);
} else {
list.add(arr[i]);
}
}
if (list.isEmpty()) {
list.add(-1);
}
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 k) {
HashSet<Integer> set = new HashSet<>();
int[] answer=new int[k];
int count=0;
for(int i=0; i<arr.length; i++) {
if(!set.contains(arr[i])) {
set.add(arr[i]);
answer[count]=arr[i];
count++;
}
if(count==k) {
break;
}
}
for(int i=count; i<k; i++) {
answer[i]=-1;
}
return answer;
}
}