#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void push(int *stack,int *top,int num){
	(*top)++;
	stack[*top]=num;
}

int pop(int *stack,int *top){
	(*top)--;
	return stack[*top+1];
}

int main(){
	char input[1024],*p;
	int stack[5],top=0,num_1,num_2;
	
	fgets(input,sizeof input,stdin);
	p=strtok(input," ");
	push(stack,&top,atoi(p));
	
	while(1){
		p=strtok(NULL," ");
		
		if(p==NULL){
			break;
		}
		
		switch(*p){
		case '+':
			num_2=pop(stack,&top);
			num_1=pop(stack,&top);
			push(stack,&top,num_1+num_2);
		break;
		
		case '-':
			num_2=pop(stack,&top);
			num_1=pop(stack,&top);
			push(stack,&top,num_1-num_2);
		break;
			
		case '*':
			num_2=pop(stack,&top);
			num_1=pop(stack,&top);
			push(stack,&top,num_1*num_2);
		break;
			
		case '/':
			num_2=pop(stack,&top);
			num_1=pop(stack,&top);
			push(stack,&top,num_1/num_2);
		break;
			
		default:
			push(stack,&top,atoi(p));
		break;
		}
		
	}
	
	printf("%d\n",stack[1]);
	
	return 0;
}