Cod sursa(job #7252)

Utilizator smecheruBerindei Vlad smecheru Data 21 ianuarie 2007 13:15:29
Problema Radiatie Scor 0
Compilator cpp Status done
Runda preONI 2007, Runda 1, Clasele 11-12 Marime 0.73 kb
#include <fstream.h>
int N,M,K;
long int a[15000][15000];
int max(long int a, long int b)
	{
	if(a>b) return a;
	return b;
	}

void creare()
	{
	int k,j,i;
	long int l;
	for(k=1;k<=N;k++)
		for(i=1;i<=N;i++)
			for(j=i;j<=N;j++)
				{
				l=max(a[i][k],a[k][j]);
				if(a[i][j]>l)
					a[i][j]=l;
				}
	}

int main()
	{
	int i,j,x,y;
	long int l;
	ifstream f("radiatie.in");
	ofstream f2("radiatie.out");
	f>>N>>M>>K;
	for(i=1;i<=N;i++)
		for(j=1;j<=N;j++)
			a[i][j]=30000;
	for(i=1;i<=M;i++)
		{
		f>>x>>y>>l;
		a[x][y]=l;
		a[y][x]=l;
		}
	creare();
	for(i=1;i<=K;i++)
		{
		f>>x>>y;
		if(max(x,y)==y)
		f2<<a[x][y]<<'\n';
		else
		f2<<a[y][x]<<'\n';
		}

	f.close();
	f2.close();
	return 0;
	}