제출 #1139722

#제출 시각아이디문제언어결과실행 시간메모리
1139722tone_alexandruMonthly railway pass (LMIO18_menesinis_bilietas)C++20
30 / 100
3095 ms28468 KiB
#include <bits/stdc++.h> using namespace std; vector<pair<int, char>> adj[500005]; queue<int> q; int minim[500005]; signed main() { int n, m; cin>>n>>m; int a, b; char type; for(int i=0; i<m; i++) { cin>>a>>b>>type; adj[a].push_back({b, type}); adj[b].push_back({a, type}); } int cnt = 0; for(int i=1; i<=n; i++) { for(int i=1; i<=n; i++) minim[i] = 21e8; minim[i] = 0; q.push(i); while(q.empty() == false) { int nod = q.front(); q.pop(); for(auto x : adj[nod]) { int type = x.second; if(type == 'T'&& minim[x.first] > minim[nod]) { minim[x.first] = minim[nod]; q.push(x.first); } else if(type == 'A' && minim[x.first] > minim[nod] + 1) { minim[x.first] = minim[nod] + 1; q.push(x.first); } } } int ok = 0; for(int j=1; j<=n; j++) { //cout<<j<<" "<<minim[j]<<'\n'; if(minim[j] > 1) { ok = 1; //break; } } //cout<<'\n'; if(ok == 0) cnt++; } cout<<cnt; return 0; }
#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...