Cod sursa(job #2903330)

Utilizator Teodor_AxinteAxinte Teodor-Ionut Teodor_Axinte Data 17 mai 2022 14:05:09
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>

using namespace std;

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

int n, m, i, q, p, aux, okay = 1;
int stramos[250010];

int main()
{
    fin >> n >> m;
    for (int i = 1; i <= n; i++)
    {
        fin >> stramos[i];
        if (stramos[i] != i - 1)
            okay = 0;
    }

    for (int i = 1; i <= m; i++)
    {
        fin >> q >> p;
        if (okay)
        {
            if (q - p > 0)
                fout << q - p << '\n';
            else
                fout << 0 << '\n';
        }
        else
        {
            while (p != 0 && q != 0)
            {
                p--;
                q = stramos[q];
            }
            fout << q << '\n';
        }
    }
    return 0;
}