Cod sursa(job #1473985)

Utilizator cojocarugabiReality cojocarugabi Data 20 august 2015 17:06:38
Problema Secv8 Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
# include <bits/stdc++.h>
# include <ext/rope>
using namespace std;
using namespace __gnu_cxx;
rope < int > v;
int main(void)
{
    ifstream fi("secv8.in");
    ofstream fo("secv8.out");
    int n,m;
    fi>>n>>m;
    while (n --)
    {
        char c;
        int l,r;
        fi>>c;
        if (c == 'I') fi>>l>>r,v.insert(l-1,r);
        else
        if (c == 'A') fi>>l,fo << *(v.mutable_begin() + l - 1) << '\n';
        else
        if (c == 'R')
        {
            fi>>l>>r;
            rope < int > c = v.substr(l-1,r-l+1);
            v.erase(l-1,r-l+1);
            reverse(c.mutable_begin(),c.mutable_end());
            v.insert(l-1,c);
        }
        else
        if (c == 'D')
        {
            fi>>l>>r;
            v.erase(l-1,r-l+1);
        }
    }
    for (auto it = v.mutable_begin();it != v.mutable_end();++it) fo << *it << ' ';
    return fo << '\n',0;
}