Cod sursa(job #3164834)

Utilizator radu1331Mocan Radu radu1331 Data 4 noiembrie 2023 13:56:45
Problema Stramosi Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")

const int NMAX = 1e6 + 5;

int sm [ NMAX ];

int main ( int argc, char *argv[] )
{
    ( void )! freopen ( "stramosi.in" , "r" , stdin );
    ( void )! freopen ( "stramosi.out" , "w" , stdout );
    std::ios_base::sync_with_stdio ( false );
    std::cin.tie ( NULL );
    
    int n, m; std::cin >> n >> m;
    for ( int i = 1; i <= n; ++ i ) std::cin >> sm [ i ];
    while ( m )
    {
        int p, q; std::cin >> q >> p;
        int res = sm [ q ];
        if ( p > q ) std::cout << 0 <<'\n';
        else
        {
            for ( int i = 0; i < p - 1; ++ i ) 
            {
                if ( res == 0 ) break;
                res = sm [ res ];
            }
            std::cout << res << '\n';
        }
        -- m;
    }
    return 0;
}