Borderou de evaluare (job #1687900)

Utilizator dex4Darjan Catalin dex4 Data 13 aprilie 2016 09:46:47
Problema Catun Status done
Runda Arhiva de probleme Compilator cpp | Vezi sursa
Scor 100

Raport evaluator

Compilare: user.cpp: In function ‘void solve()’: user.cpp:8:537: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] int n,m,k,forts[nmax],dist[nmax],own[nmax];bool is_fort[nmax];vector <pair <int, int> > G[nmax];void read(){int x,y,c;ifstream f("catun.in");f >> n >> m >> k;for(int i=1;i<=k;i++){f >> forts[i];is_fort[forts[i]]=1;}for(int i=1;i<=m;i++){f >> x >> y >> c;G[x].push_back(make_pair(y,c));G[y].push_back(make_pair(x,c));}for(int i=1;i<=n;i++){dist[i]=inf;own[i]=0;}}void solve(){int fort=0,w,v,nod;for(int i=1;i<=k;i++){fort=forts[i];queue <int> Q;Q.push(fort);dist[fort]=0;while(!Q.empty()){nod=Q.front();Q.pop();for(int i=0;i<G[nod].size();i++){v=G[nod][i].first;w= G[nod][i].second;if(own[v]){if(dist[v]==dist[nod]+w)own[v]=min(own[v],fort),Q.push(v);if(dist[v]>dist[nod]+w){dist[v]=dist[nod]+w;Q.push(v);own[v]=fort;}}else if(dist[v]>dist[nod]+w){dist[v]=dist[nod]+w;own[v]=fort;Q.push(v);}}}own[fort]=0;}}int main(){read();solve();ofstream g("catun.out");for(int i=1;i<=n;i++)g << own[i] << " ";return 0;} ^
Test Timp executie Memorie folosita Mesaj Punctaj/test
10ms876kbOK10
24ms980kbOK10
316ms1164kbOK10
40ms872kbOK10
540ms1664kbOK10
688ms2308kbOK10
74ms1028kbOK10
820ms1176kbOK10
968ms1836kbOK10
10172ms3068kbOK10
Punctaj total100

Ceva nu functioneaza?