Cod sursa(job #1792973)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 30 octombrie 2016 18:39:44
Problema Portal3 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("portal3.in");
ofstream g("portal3.out");
int t,i,j,k;
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(i=1;i<=5;i+=2) f>>p[i]>>P[i]>>p[i+1]>>P[i+1]>>c[i];
        for(i=0;i<=7;++i)
            for(j=i;j<=7;++j)
                a[j][i]=a[i][j]=abs(p[i]-p[j])+abs(P[i]-P[j]);;
        for(i=1;i<6;i+=2)
            if(c[i]<a[i][i+1]) a[i][i+1]=a[i+1][i]=c[i];
        for(k=0;k<=7;++k)
            for(i=0;i<=7;++i)
                for(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;
}