📢 문제 출처
- https://school.programmers.co.kr/learn/courses/30/lessons/181885?language=java
⏰ 문제 설명
- 오늘 해야 할 일이 담긴 문자열 배열 todo_list와 각각의 일을 지금 마쳤는지를 나타내는 boolean 배열 finished가 매개변수로 주어질 때, todo_list에서 아직 마치지 못한 일들을 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요.
⏰ 입출력 예시
- 입출력 예 #1
- (1) 예제 1번의 todo_list 중에서 "problemsolving"과 "swim"은 마쳤고, "practiceguitar"와 "studygraph"는 아직 마치지 못했으므로 todo_list에서 나온 순서대로 담은 문자열 배열 ["practiceguitar", "studygraph"]를 return 합니다.
⏰ 풀이
import java.util.*;
class Solution {
public String[] solution(String[] todo_list, boolean[] finished) {
ArrayList<String> arr = new ArrayList<>();
for(int i = 0; i<todo_list.length;i++){
if(finished[i]==false){
arr.add(todo_list[i]);
}
}
String[] answer = new String[arr.size()];
for (int i = 0; i < answer.length; i++) {
answer[i] = arr.get(i);
}
return answer;
}
}
- finished라는 boolean 변수를 가지고 true,false 일 때 각 조건에 맞게 진행해야한다.
- ArrayList 함수를 이용해서 해당 문제를 풀었는데 List 사용 시에 import java.util.*; 선언하여 진행한다.
- todo_list의 배열의 갯수에 따라 반복하여 해당 문자열에 맞게 Flag가 true이면 arr에 add 시킨다.
- String[] 으로 리턴을 해야하기 때문에 String[] answer를 새로 선언하여 answer.length 만큼 arr.get하여 대입한다
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 정수 찾기 (0) | 2023.08.06 |
---|---|
[프로그래머스] 두 수의 연산 값 비교하기 (0) | 2023.08.06 |
[프로그래머스] 커피 심부름 (0) | 2023.08.06 |
댓글