Cod sursa(job #472419)

Utilizator marius.bucurBucur Marius - Ovidiu marius.bucur Data 24 iulie 2010 18:29:43
Problema Stramosi Scor 80
Compilator c Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<stdio.h>
#include<stdlib.h>

#define MAX_N 300000
#define MAX_INTREBARI 250000

int stramosi[MAX_N];
int intrebari_s[MAX_INTREBARI];
int intrebari_r[MAX_INTREBARI];

int get_stramos(int s, int r)
{
	int i = 0;
	int cur = s;
	for(; i < r; i++)
	{
		s = stramosi[s];
		if(s == 0)
			return 0;
	}
	return s;
}

int main()
{
	int i = 0, M,N;
	FILE* f = fopen("stramosi.in", "r");
	fscanf(f, "%d %d", &N, &M);
	for(; i < N; i++)
	{
		int ch;
		fscanf(f, "%d", &ch);
		stramosi[i+1] = ch;
	}
	for(i = 0; i < M; i++)
	{
		fscanf(f, "%d %d", &intrebari_s[i+1], &intrebari_r[i+1]);
	}
	fclose(f);
	f = fopen("stramosi.out", "w");
	for(i = 1; i <= M; i++)
		fprintf(f, "%d\n", get_stramos(intrebari_s[i], intrebari_r[i]));
	fclose(f);
}