Cod sursa(job #1502473)

Utilizator ErikHEErik Henning ErikHE Data 14 octombrie 2015 18:08:14
Problema Ubuntzei Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.28 kb
//SURSA NETERMINATA - DEBUGGING
#include <iostream>
#include <fstream>
using namespace std;


ifstream f("ubuntzei.in");
ofstream g("ubuntzei.out");



int main()
{
    int n, m, k, i, j, x, y, z;

    int c[2000], a[100][100];
    int mark[10000];
    f>>n>>m>>k;
int poz;
    for (i=1;i<=k;i++)
        f>>c[i];

    for (i=1;i<=m;i++)  {
            f>>x>>y>>z;
            a[x][y]=z;
            a[y][x]=z;
            mark[i]=-1;

        }
   mark[1]=0;
    long min1 = 100002;

    int marcate = 1, mark1[2000];
    while (marcate!=n)    {
        for (i=1;i<=n;i++)
            mark1[i] = 0;
         for (i=1;i<=n;i++) {
            if (mark[i] >= 0)   {
                for (j=1;j<=n;j++)
                    if (a[i][j] != 0 && (mark[j] == -1 )  )   {
                        mark1[j] = mark[i] + a[i][j];
                    }
            }
         }
          min1 = 100002;
            for (i=1;i<=n;i++)  {

                if (min1 > mark1[i] && mark1[i] != 0)    {
                    min1 = mark1[i];
                    poz = i;

                }
            }
mark[poz] = min1;
marcate++;
    }
            for (i=1;i<=n;i++)  {
                cout<<mark[i]<<" ";
            }

    cout<<endl<<min1;


    return 0;
    }