VDANGER - Nguy hiểm rõ ràng trước mắt
Tác giả: hieult
Ngôn ngữ: C++
#include <stdio.h>
//#include <conio.h>
int main()
{
//freopen("VDANGER.in","r",stdin);
long long n,m,t[10001],a[101][101];
scanf("%lld %lld",&n,&m);
for(int i = 1;i<=m;i++)
scanf("%lld",&t[i]);
for(int i = 1;i<=n;i++)
for(int j = 1;j<=n;j++)
scanf("%lld",&a[i][j]);
for(int i = 1;i<=n;i++)
for(int j = 1;j<=n;j++)
for(int k = 1;k<=n;k++)
if(a[j][i]+a[i][k]<a[j][k])
{
a[j][k] = a[j][i]+a[i][k];
}
long long KQ = 0;
for(int i = 1;i<m;i++)
KQ = KQ+a[t[i]][t[i+1]];
printf("%lld",KQ);
// getch();
}