Cod sursa(job #1042734)

Utilizator tavi.belu1994FMI Belu Andrei Octavian tavi.belu1994 Data 27 noiembrie 2013 17:20:32
Problema Stramosi Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <iostream>
#include <cstdio>
FILE *f,*g;
using namespace std;

int N,M,T[25000][10000];

void read()
{
    fscanf(f,"%d%d\n",&N,&M);
    for(int i=1;i<=N;i++)
    {
        //citim tatal de intaltime 1 a lui i
        fscanf(f,"%d",&T[1][i]);
    }
}

void make_stramosi()
{
    int i,j;
    for(i=1;i<=N;i++)
    {
        j=1;
        while(T[j][i])
        {
            j++;
            T[j][i] = T[1][T[j-1][i]];
        }
    }
}

int main()
{
    f=fopen("stramosi.in","r");
    g=fopen("stramosi.out","w");
    read();
    make_stramosi();
    for(int i=1;i<=M;i++)
    {
        int Q,P;
        fscanf(f,"%d%d\n",&Q,&P);
        fprintf(g,"%d\n",T[P][Q]);
    }
    fclose(f);
    fclose(g);
    return 0;
}