Cod sursă (job #341415)

Utilizator avatar Tavinci Octavian Stefanescu Tavinci IP ascuns
Problemă Bizar (clasele 9-10) Compilator cpp | 0,71 kb
Rundă Arhiva de probleme Status evaluat
Dată 20 ian. 2018 09:56:06 Scor 100
#include<fstream>
#include<iostream>
using namespace std;

ifstream fin("bizar.in");
ofstream fout("bizar.out");
char s[100005], ch;
int nrelem[100005],v[100005], ind=1, val=1;
int main()
{
    fin>>v[1];
    nrelem[1]=1;
    while(fin>>ch)
    {
        if(ch==',' || ch==' ')
        {
            fin>>v[++ind];
            continue;
        }
        if(ch=='(')
        {
            nrelem[++ind]=val;
            val=ind;
            fin>>v[ind];
            continue;
        }
        int poz=v[val-1];
        poz%=(ind-val+1);
        if(poz==0)
            poz=ind-val+1;
        ind=val-1;
        v[ind]=v[ind+poz];
        val=nrelem[val];
    }
    fout<<v[1];
    return 0;
}