Pagini recente » Cod sursa (job #2183577) | Cod sursa (job #1934990) | Cod sursa (job #24753) | Cod sursa (job #537247) | Cod sursa (job #1117659)
#include<iostream>
using namespace std;
#include<stdio.h>
FILE *f,*g;
int n,m,a[2001][2001],i,j,k,z[2001],x,y;
int lungime()
{int u;
for(u=1;u<=n;u++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(a[i][j]>a[i][u]+a[u][j]);
a[i][j]=a[i][u]+a[u][j];
}
int main()
{
f=fopen("ubuntzei.in","r");
g=fopen("ubuntzei.out","w");
fscanf(f,"%d%d",&n,&m);
fscanf(f,"%d",&k);
for(i=1;i<=k;i++)
fscanf(f,"%d",&z[i]);
for(i=1;i<=m;i++)
{fscanf(f,"%d%d",&x,&y);
fscanf(f,"%d",&a[x][y]);
a[y][x]=a[x][y];
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(i!=j&&a[i][j]==0)
a[i][j]=3200;
lungime();
fprintf(g,"%d",a[1][n]);
}