Cod sursa(job #1141953)

Utilizator vlad_beluVlad Belu vlad_belu Data 13 martie 2014 12:28:01
Problema Sate Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <iostream>
#include <fstream>
#include <cstring>
#include <cmath>
#include <stdlib.h>
#include <iomanip>

using namespace std;

struct sat
{
    int dist[1001];
};

int cauta(sat comuna[],int x,int y,int n)
{
    int D=0,l=x,ant=0;
    while(l!=y)
    {
        for(int i=1;i<=n;i++)
            if(comuna[l].dist[i] && i!=ant)
            {
                if(l<i) D+=comuna[l].dist[i];
                else D-=comuna[l].dist[i];
                ant=l;
                l=i;
            }
    }
    return D;
}

int main()
{
    ifstream f("sate.in");

    int n,m,x,y,i1,i2,d;
    short dist[300][300];
    sat *comuna;
    f>>n>>m>>x>>y;
    comuna=new sat[n+1];

    for(int i=1;i<=n;i++)
        for(int j=1;j<=n;j++)
            comuna[i].dist[j]=0;

    for(short i=0;i<m;i++)
    {
        f>>i1>>i2>>d;
        comuna[i1].dist[i2]=d;
        comuna[i2].dist[i1]=d;
    }

    ofstream g("sate.out");
    g<<cauta(comuna,1,11,n);
    f.close(); g.close();
    return 0;
}