Pagini recente »
Istoria paginii runda/un_concurs_pt_oricine/clasament
|
Istoria paginii runda/small/clasament
|
Borderou de evaluare (job #157410)
|
Istoria paginii runda/simulareoji
|
Cod sursă (job #149807)
Cod sursă (job
#149807)
#include <stdio.h>
#include <stdlib.h>
#define MAXN 100000
FILE*fi,*fout;
char a;
int v[MAXN];
inline void blanc(){
a=fgetc(fi);
while(a==' ')
a=fgetc(fi);
}
inline int numar(){
int nr=0;
while(a>='0'&&a<='9'){
nr=nr*10+a-'0';
a=fgetc(fi);
}
while(a==' ')
a=fgetc(fi);
return nr;
}
int E(int p1){
int nr,p2;
nr=numar();
while(a=='('){
p2=p1;
blanc();
while(a>='0'&&a<='9'){
v[p2]=E(p2);
p2++;
blanc();
}
nr=v[p1+(nr-1)%(p2-p1)];
}
return nr;
}
int main(){
fi=fopen("bizar.in" ,"r");
fout=fopen("bizar.out" ,"w");
blanc();
fprintf(fout,"%d" ,E(0));
fclose(fi);
fclose(fout);
return 0;
}