Cod sursa(job #1444970)

Utilizator stefan12345stefan tomsa stefan12345 Data 30 mai 2015 11:09:50
Problema Stramosi Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.42 kb
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;




int main()
{
    ifstream in ("stramosi.in");
    ofstream out ("stramosi.out");
    long m,q,n,p,v[50][10000];
    in>>n;
    in>>m;

    for (int j=1; j<=n; j++)
    {
        in>>v[1][j];

    }
    /*
      for (int i=1; i<=m;i++)
      {
          in>>q>>p;

          while (p>0&&q>0)
          {
              q=v[q];
              p--;
          }
          out<<q<<endl;
      }
      */
    bool stop=false;
    int i=2;
    while (stop==false)
    {
        stop=true;
        for (int j=1; j<=n; j++)
        {
            /*
            1 2 3 4 5
            0 1 2 2 4
            0 0 1 1 2
            */
            int nrDeasupra=v[i-1][j];
            int TataLuiNrDeasupra=v[1][nrDeasupra];
            v[i][j]= TataLuiNrDeasupra; /// v[i-1][v[i-i][j]];
            if (v[i][j]!=0)
            stop=false;
        }
        i++;
    }
    //int nrRows=--i;
/*
    for (int i=1; i<=n; i++)
        cout<<setw(3)<<i<<" ";
        cout<<endl;
    cout<<"-------------------------------------------"<<endl;
    for (int i=1; i<nrRows; i++)
    {
        for (int j=1; j<=n; j++)
            cout<<setw(3)<<v[i][j]<<" ";
        cout<<endl;
    }
*/
    for (int i=1; i<=m;i++)
    {
        in>>q>>p;
        out<<v[p][q]<<endl;
    }
    in.close();
    out.close();

    return 0;
}