문제 보기
https://school.programmers.co.kr/learn/courses/30/lessons/133502
풀이
솔직히 너무 야매로 푼 것 같지만 일단 공유한다.
스택을 쓰면 될 것 같은데 한 쌍이 아니라 4개의 숫자가 연속돼야 하는 게 문제였다.
그래서 단순 무식하게 4개를 전부 꺼내서 확인하는 방법으로 했다 ㅋㅋ
전체 코드
import java.util.Stack;
class Solution {
public int solution(int[] ingredient) {
Stack<Integer> stack = new Stack<Integer>();
int count = 0;
for (int j : ingredient) {
stack.push(j);
if(stack.size() >= 4) {
int int4 = stack.pop();
int int3 = stack.pop();
int int2 = stack.pop();
int int1 = stack.pop();
if(int4 == 1 && int3 == 3 && int2 == 2 && int1 == 1) {
count++;
} else {
stack.push(int1);
stack.push(int2);
stack.push(int3);
stack.push(int4);
}
}
}
return count;
}
}
GitHub 링크
'ProblemSolve > 항해99 코테스터디' 카테고리의 다른 글
99클럽 코테 스터디 4일차 TIL (미들러): [백준][Java] 24479 알고리즘 수업 - 깊이 우선 탐색 1 - 실버2 (0) | 2024.10.31 |
---|---|
99클럽 코테 스터디 3일차 TIL (챌린저): [백준][Java] 17609 회문 - 골드5 (0) | 2024.10.30 |
99클럽 코테 스터디 3일차 TIL (미들러): [프로그래머스][Java] 11561 징검다리 - level3 (0) | 2024.10.30 |
99클럽 코테 스터디 2일차 TIL (챌린저): [백준][C++] 1389 케빈 베이컨의 6단계 법칙 - 실버1 (0) | 2024.10.29 |
99클럽 코테 스터디 2일차 TIL (비기너): [프로그래머스][Java] 크기가 작은 부분 문자열 - level 1 (0) | 2024.10.29 |