Pagini recente »
Rating hacker ^_^ (RobertSerb)
|
Istoria paginii runda/2020-02-22-clasa-5-concurs
|
2018-11-29-test-6-2
|
Monitorul de evaluare
|
Cod sursă (job #796079)
Cod sursă (job
#796079)
#include <fstream>
using namespace std;
#define MAXN (int)1e5
char v[MAXN+1];
int a[MAXN+1];
int n,pos,nra;
int solve() {
int nr=0,nrac,nrt;
nrac=nra;
while(isdigit(v[pos])) {
nr=nr*10+v[pos]-'0';
pos++;
}
while(pos<n&&v[pos]=='(') {
pos++;
nrt=0;
while(v[pos]!=')') {
a[nra++]=solve();
nrt++;
if(v[pos]==',') {
pos++;
}
}
nra=nrac;
nr=nr%nrt;
if(nr==0) {
nr=nrt;
}
nr=a[nra+nr-1];
pos++;
}
return nr;
}
void delete_spaces() {
int i;
n=0;
i=0;
while(v[i]!=0) {
if(!isspace(v[i])) {
v[n++]=v[i];
}
i++;
}
}
int main() {
ifstream fin("bizar.in");
ofstream fout("bizar.out");
fin.getline(v,MAXN);
delete_spaces();
fout<<solve();
return 0;
}