Cod sursa(job #2679443)

Utilizator rares404AlShaytan - Balasescu Rares rares404 Data 30 noiembrie 2020 16:20:46
Problema Stramosi Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <cstdio>
 
using namespace std;
 
int v[250000];
 
int main()
{
		freopen("stramosi.in","r",stdin);
		freopen("stramosi.out","w",stdout);
		int n, m, x, y, i, cns = 0;
		scanf("%d%d",&n,&m);
		for(int i = 1; i <= n; i++)
		{
				scanf("%ld",&v[i]);
				if(v[i] == i-1)
						cns++;
		}
		if(cns == n)
		{
				while(m--)
				{
						scanf("%d%d", &x, &y);
						if(x>=y)
								printf("%d\n",x-y);
						else
								printf("0\n");
				}
 
		}
		else
		{
 
				while(m--)
				{
						scanf("%d%d",&x,&y);
						for(i=y; x&&i; i--)
								x=v[x];
						printf("%d\n",x);
				}
		}
		return 0;
}