Pagini recente » Cod sursa (job #2381939) | Cod sursa (job #564116) | Cod sursa (job #2546152) | Cod sursa (job #1926109) | Cod sursa (job #2719884)
#include <bits/stdc++.h>
using namespace std;
ifstream f("portal3.in");
ofstream g("portal3.out");
int t;
long long c[8],a[8][8],p[8],P[8];
int main()
{
f>>t;
while(t--)
{
f>>p[7]>>P[7];
p[0]=P[0]=0;
for(int i=1; i<=5; i+=2)
{
f>>p[i]>>P[i]>>p[i+1]>>P[i+1]>>c[i];
}
for(int i=0; i<=7; ++i)
{
for(int j=i; j<=7; ++j)
{
a[j][i]=a[i][j]=abs(p[i]-p[j])+abs(P[i]-P[j]);;
}
}
for(int i=1; i<6; i+=2)
{
if(c[i]<a[i][i+1])
{
a[i][i+1]=a[i+1][i]=c[i];
}
}
for(int k=0; k<=7; ++k)
{
for(int i=0; i<=7; ++i)
{
for(int j=0; j<=7; ++j)
{
if(i!=j && i!=k && k!=j && a[i][j]>a[i][k]+a[k][j])
{
a[i][j]=a[i][k]+a[k][j];
}
}
}
}
g<<a[0][7]<<'\n';
}
return 0;
}