Pagini recente » Cod sursa (job #343164) | Cod sursa (job #2966390) | Cod sursa (job #590264) | Cod sursa (job #1705001) | Cod sursa (job #1992125)
#include <fstream>
#include <stack>
using namespace std;
ifstream fi("emm.in");
ofstream fo("emm.out");
char x,a[100005];
int nr,n;
stack<int> st1,st2;
void Compress()
{
int a=st1.top();
st1.pop();
int b=st1.top();
st1.pop();
if(st2.top()==1) st1.push(min(a,b));
if(st2.top()==2) st1.push(max(a,b));
st2.pop();
}
int main()
{
while(fi>>x) a[++n]=x;
for(int i=1;i<=n;i++)
{
if(a[i]=='m') st2.push(1);
if(a[i]=='M') st2.push(2);
if (isdigit(a[i])) nr=nr*10+(a[i]-'0');
if (isdigit(a[i]) and !isdigit(a[i+1]))
{st1.push(nr);nr=0;Compress();}
}
fo<<st1.top();
return 0;
}