반응형
◎ 문제풀이
재료들이 배열에 차례대로 저장되어 있다. 햄버거를 만드는 패턴과 일치하는 케이스를 카운트 하면 된다. 배열에 저장되어 있는 재료들을 가장 왼쪽부터 차례대로 자료구조에 담으면서, 빵-야채-고기-빵 차례로 데이터가 나열되는지를 체크하면 된다. 자료구조는 리스트를 사용하였고 리스트에서 만들어진 햄버거 재료를 제거할 때, size가 가변적으로 변하니 인덱스 사용에 주의해야 한다.
◎ 코드
import java.util.*;
class Solution {
public int solution(int[] ingredient) {
int answer = 0;
LinkedList<Integer> list = new LinkedList<>();
for(int value : ingredient){
list.add(value);
if(list.size() >= 4){
int idx = list.size()-1;
if(list.get(idx)==1&&list.get(idx-1)==3&&list.get(idx-2)==2&&list.get(idx-3)==1){
answer++;
for(int i=9;i>4;i++){
list.remove(list.size()-1); // remove 할때 마다 size가 가변적으로 변한다.
}
}
}
}
return answer;
}
}
반응형
'문제풀이 > DataStructure' 카테고리의 다른 글
[PS] BOJ2493 탑 ( Stack ) with JAVA (0) | 2023.11.14 |
---|---|
[CodingTest] BOJ1918 후위표기식 ( 자료구조 ) With 파이썬 (0) | 2023.06.16 |
[CodingTest] BOJ17298 오큰수 ( 자료구조 ) With 파이썬 (0) | 2023.06.13 |
[CodingTest] BOJ10799 쇠막대기 ( 자료구조 ) With 파이썬 (0) | 2023.06.12 |
[PS] BOJ1158 요세푸스 문제 ( 자료구조 ) with Python,JAVA (0) | 2023.06.07 |