Pagini recente »
finala_dp_1aprilie
|
shumen_ceva_prob
|
Clasament simulareoni6_4
|
Cod sursă (job #316990)
|
Cod sursă (job #750527)
Cod sursă (job
#750527)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("bizar.in");
ofstream fout("bizar.out");
int main()
{
stack <int> v;
int n;
string s;
vector<int> tmp;
getline(fin, s);
n=s.size();
s="t"+s;
for(int i=1;i<=n;++i)
{
if(s[i]=='(')
{
v.push(-1);
}
else if(s[i]==')')
{
while(v.top() != -1)
{
tmp.push_back(v.top());
v.pop();
}
v.pop();
reverse(tmp.begin(), tmp.end());
int k = tmp[(v.top() - 1) % tmp.size()];
tmp.clear();
v.pop();
v.push(k);
}
else if(s[i] != ',' && s[i]!=' ') {
int nr = 0;
while(i <= n && s[i] <= '9' && s[i] >= '0') {
nr = nr * 10 + (s[i++] - '0');
}
v.push(nr);
--i;
}
}
fout << v.top();
return 0;
}