프로그래머스 (배열 만들기 5)
import java.util.ArrayList;
import java.util.List;
public class problem397 {
class Solution {
public int[] solution(String[] intStrs, int k, int s, int l) {
List<Integer> temp = new ArrayList<>();
for (int i = 0; i < intStrs.length; i++) {
// 문자열을 자르고, int로 변환
int num = Integer.parseInt(intStrs[i].substring(s, s + l));
if (num > k) {
temp.add(num);
}
}
int[] answer = new int[temp.size()];
for (int i = 0; i < answer.length; i++) {
answer[i] = temp.get(i);
}
return answer;
}
}
}
프로그래머스 (빈 배열에 추가, 삭제하기)
import java.util.ArrayList;
import java.util.List;
public class problem398 {
class Solution {
public int[] solution(int[] arr, boolean[] flag) {
List<Integer> list = new ArrayList<>();
for (int i = 0; i < arr.length; i++) {
// true 인경우
if (flag[i]) {
int loop = arr[i] * 2;
// loop 만큼 List에 값을 담아준다.
for (int j = 0; j < loop; j++) {
list.add(arr[i]);
}
}
// false 인경우
else {
int loop = arr[i];
for (int j = 0; j < loop; j++) {
// 끝부분을 제거해야됨으로 List 길이의 - 1
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;
}
}
}
프로그래머스 (글자 지우기)
import java.util.ArrayList;
import java.util.List;
public class problem399 {
class Solution {
public String solution(String my_string, int[] indices) {
String answer = "";
List<String> temp = new ArrayList<>();
for (int i = 0; i < my_string.length(); i++) {
// temp 리스트에 my_string의 문자열을
// 문자 하나씩 꺼낸후 String으로 바꿔주면서 더해주었습니다.
temp.add(Character.toString(my_string.charAt(i)));
}
for (int index : indices) {
// temp 리스트의 index에 해당하는 인덱스를 공백으로 바꿔준다.
temp.set(index, "");
}
StringBuilder sb = new StringBuilder();
for (String str : temp) {
if (!str.isEmpty()) {
sb.append(str);
}
}
return sb.toString();
}
}
}