Pagini recente » Cod sursa (job #2061761) | Cod sursa (job #717687) | Cod sursa (job #2096510) | Cod sursa (job #49559) | Cod sursa (job #2761437)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("traseu.in");
ofstream g("traseu.out");
int main()
{
int N,M;
int A[101][101];
int dmin=100;
int S[101];
f>>N;
f>>M;
//citire
for(int i=1;i<=N;++i)
{for(int j=1;j<=M;++j)
{
f>>A[i][j];
}
}
for(int i=1;i<=N;++i)
{
f>>S[i];
}
//roy-floyd
for(int k=1;k<=N;k++)
for(int i=1;i<=N;i++)
for(int j=1;j<=M;j++)
if(A[i][j]>A[i][k]+A[k][j])
{
A[i][j]=A[i][k]+A[k][j];
}
//dist min
for(int i=1;i<=N;i++)
{
int s=0;
for(int j=1;j,=M;j++)
s=s+A[i][j];
S[i]=s;
if(S[i]<dmin)
{
dmin=S[i];
}
for(int i=1;i<=N;i++)
if(S[i]==dmin)
g<<i;
}
f.close();
g.close();
return 0;
}