Cod sursa(job #2301796)

Utilizator vranceanu.andi2014Vranceanu Andi vranceanu.andi2014 Data 13 decembrie 2018 15:48:19
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <fstream>
#include <stack>
#include <cstring>
#include <vector>
using namespace std;

ifstream fin("bile3.in");
ofstream fout("bile3.out");

stack<int> S;
vector<char> v;
vector<int> secundar;
int init[2001],rez[2001];
int curent;

int main()
{
    int n, i, x, curent=0;
    fin >> n;
    for (i=0; i<n; i++)
        fin >> init[i];
    for (i=0; i<n; i++)
        fin >> rez[i];
    for (i=0; i<n; i++)
    {
        x=init[i];
        S.push(x);
        v.push_back('I');
        while (!S.empty() && S.top() == rez[curent])
        {
            v.push_back('O');
            S.pop();
            curent++;
        }
    }
    if (!S.empty())
    {
        fout << "imposibil";
    }
    else
    {
        for (char cc : v)
        {
            fout<<cc;
        }
        fout << '\n';
    }
    return 0;
}