Dazzling 개발 노트
[프로그래머스] 햄버거 만들기 (Java) 본문
[프로그래머스] 햄버거 만들기 (Java)
문제
https://school.programmers.co.kr/learn/courses/30/lessons/133502
풀이/후기
Stack으로 풀지 List로 풀지 고민하다가 결국 List로 해결했다.
연속된 것을 판단할 때, 꼭 반복문의 조건으로 이전 값을 탐색하지 않아도
i+1, i+2, i+3을 통해 한 번에 조회할 수 있는 방법을 습득했다.(?)
코드
import java.util.*;
class Solution {
public int solution(int[] ingredient) {
int answer = 0;
List<Integer> list = new LinkedList<>();
for (int i : ingredient){
list.add(i);
while (list.size() >= 4){
int size = list.size();
if ( !(list.get(size-1) == 1 && list.get(size-2) == 3 && list.get(size-3) == 2 && list.get(size-4) == 1 )) break;
for (int j=0; j<4; j++){
list.remove(list.size() - 1);
}
answer++;
}
}
return answer;
}
}
Commit
https://github.com/allrightDJ0108/CodingTestStudy/commit/ab556b1ffe4ad533818aedc9c0587618159e10a6
참고
https://velog.io/@e-7281998/%ED%96%84%EB%B2%84%EA%B1%B0-%EB%A7%8C%EB%93%A4%EA%B8%B0