Submission #639608

#TimeUsernameProblemLanguageResultExecution timeMemory
639608teeslaMonthly railway pass (LMIO18_menesinis_bilietas)C++14
30 / 100
3093 ms29920 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int>ii; const int maxn=1e5+10; vector<ii>adj[5*maxn]; int visitado[5*maxn]; int n,m; void bfs(int x){ visitado[x]=0; priority_queue<ii,vector<ii>,greater<ii>> fila; fila.push({0,x}); while(!fila.empty()){ int atual=fila.top().second,dist=fila.top().first; fila.pop(); if(visitado[atual]!=-1 and dist>visitado[atual]) continue; visitado[atual]=dist; if(visitado[atual]>1)continue; for(int i=0; i<adj[atual].size(); i++){ int viz=adj[atual][i].first, d=adj[atual][i].second; if(dist+d>1)continue; else if(visitado[viz]==-1 and dist+d<=1){ visitado[viz]=d+dist; fila.push({d+dist,viz}); } else if(visitado[viz]>dist+d){ visitado[viz]=dist+d; fila.push({d+dist,viz}); } } } return; } int main(){ cin >> n>> m; for(int i=0; i<m; i++){ int a,b; char c; cin >> a >> b >> c; if(c=='T'){ adj[a].push_back({b,0}); adj[b].push_back({a,0}); } else{ adj[a].push_back({b,1}); adj[b].push_back({a,1}); } } int res=0; for(int i=1; i<=n; i++){ for(int j=0; j<=n; j++) visitado[j]=-1; bfs(i); int ok=1; for(int j=1; j<=n; j++){ if(visitado[j]==-1 or visitado[j]>1){ ok=0; break; } } //if(ok)cout << i<<endl; //cout << ok<<endl; res+=ok; } cout << res<<endl; return 0; }

Compilation message (stderr)

menesinis_bilietas.cpp: In function 'void bfs(int)':
menesinis_bilietas.cpp:22:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |   for(int i=0; i<adj[atual].size(); i++){
      |                ~^~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...