/*
//전처리기
#include <stdio.h>
#define SIZE 50 //상수 선언
int stack[SIZE]={};
int top=-1; //top은 마지막 데이터의 위치
void view_stack(){
printf("stack >> ");
for(int i=0;i<=top;i++)
printf("%d ",stack[i]);
printf("\n");
}
void push(int data){
//full check
if(top==SIZE-1) return ;
stack[++top]=data;
}
int pop(){
//empty check
if(top==-1) return -1; // -1을 넣지 않는 스택일때만
return stack[top--];
}
int main()
{
while(1){
int c;
printf("1. push 2. pop 3. view >>");
scanf("%d",&c);
if(c==1){
int n;
printf("push할 데이터를 입력하세요 >>");
scanf("%d",&n);
push(n);
view_stack();
}
else if(c==2){
int n = pop();
if(n==-1) continue;
printf("%d\n",n);
// if(top==-1) continue;
// printf("pop 데이터는 %d 입니다\n",stack[top]);
// top--;
view_stack();
}
else{
view_stack();
}
}
}
#include <stdio.h>
#include <string.h>
char stack[500]={};
int top=-1;
void push(char n)
{
stack[++top]=n;
}
char pop()
{
return stack[top--] ;
}
int main()
{
char str[500]={};
scanf("%s",str);
for(int i=0;str[i]!=0;i++){
push(str[i]);
}
while(top!=-1){
printf("%c",pop());
}
}
8
12345678
12,345,678
6
456789
456,789
4
1234
1,234
*/
/*
#include <stdio.h>
char stack[300]={ };
int top=-1;
void push(char n)
{
stack[++top]=n;
}
void pop()
{
printf("%c",stack[top--]);
}
int main()
{
int n,i;
char str[201];
scanf("%d\n%s",&n,str);
for(i=n-1;i>=0;i--)
{
push(str[i]);
}
while(top!=-1){
if((top+1)%3==0&&top!=n-1) printf(",");
pop();
}
}
*/
#include <stdio.h>
int stack[100001]={};
int top=-1;
void push(int n)
{
stack[++top]=n;
}
int main()
{
int n,i,m;
int sum=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&m);
if(m!=0) push(m);
else top--;
}
for(i=0;i<=top;i++)
{
sum+=stack[i];
}
printf("%d",sum);
}