#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int stack[1000001] = {}, top = -1;
void push(int data)
{
stack[++top] = data;
}
int pop()
{
return stack[top --];
}
// ingredient_len은 배열 ingredient의 길이입니다.
int solution(int ingredient[], size_t ingredient_len) {
int answer = 0;
int a = 0, b = 0, c = 0;
int check = 0;
for(int i=0;i<3;i++) push(ingredient[i]);
for (int i = 3 ; i < ingredient_len ; i ++)
{
if (ingredient[i] == 1)
{
if (top>=2 && stack[top] == 3 && stack[top - 1] == 2 && stack[top - 2] == 1)
{
answer ++;
top -= 3;
continue;
}
}
push(ingredient[i]);
}
return answer;
}