8102 | 2024. 01. 12 13:14:05 | gortomi | Tom és Jerry 1 (80) | cpp17 | Elfogadva 80/80 | 59ms | 14740 KiB |
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
int n, m, t, p, e;
cin >> n >> m >> t >> p >> e;
vector<vector<int> > g1(n + 1), g2(n + 1);
for(int i = 0; i < m; i++)
{
int x, y, w;
cin >> x >> y >> w;
g1[x].push_back(y);
g1[y].push_back(x);
if(w == 2)
{
g2[x].push_back(y);
g2[y].push_back(x);
}
}
queue<int> q;
q.push(t);
vector<int> d(n + 1, 1e9);
d[t] = 0;
while(!q.empty())
{
int v = q.front();
q.pop();
for(auto x : g2[v])
{
if(d[x] == 1e9)
{
d[x] = d[v] + 1;
q.push(x);
}
}
}
priority_queue<pair<int, int> > pq;
vector<int> l(n + 1, -1);
pq.push({d[e] - 1, e});
l[e] = d[e] - 1;
while(!pq.empty())
{
auto [l_v, v] = pq.top();
pq.pop();
//cout << v << "\n";
if(l[v] != l_v) continue;
for(auto x : g1[v])
{
int len = min(d[x] - 1, l[v] - 1);
if(l[x] < len)
{
l[x] = len;
pq.push({l[x], x});
}
}
}
while(p--)
{
int x;
cin >> x;
cout << (l[x] < 0 ? "NEM" : "IGEN") << "\n";
}
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 80/80 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1828 KiB | |||
2 | Elfogadva | 0/0 | 4ms | 2292 KiB | |||
3 | Elfogadva | 4/4 | 3ms | 2232 KiB | |||
4 | Elfogadva | 4/4 | 3ms | 2460 KiB | |||
5 | Elfogadva | 4/4 | 3ms | 2700 KiB | |||
6 | Elfogadva | 4/4 | 3ms | 2904 KiB | |||
7 | Elfogadva | 4/4 | 3ms | 3268 KiB | |||
8 | Elfogadva | 4/4 | 4ms | 3548 KiB | |||
9 | Elfogadva | 4/4 | 4ms | 3640 KiB | |||
10 | Elfogadva | 4/4 | 4ms | 3732 KiB | |||
11 | Elfogadva | 4/4 | 8ms | 4468 KiB | |||
12 | Elfogadva | 4/4 | 8ms | 5444 KiB | |||
13 | Elfogadva | 4/4 | 16ms | 6196 KiB | |||
14 | Elfogadva | 4/4 | 30ms | 9212 KiB | |||
15 | Elfogadva | 4/4 | 37ms | 9400 KiB | |||
16 | Elfogadva | 4/4 | 43ms | 14740 KiB | |||
17 | Elfogadva | 4/4 | 57ms | 13832 KiB | |||
18 | Elfogadva | 4/4 | 41ms | 11452 KiB | |||
19 | Elfogadva | 4/4 | 46ms | 13288 KiB | |||
20 | Elfogadva | 4/4 | 43ms | 13408 KiB | |||
21 | Elfogadva | 4/4 | 32ms | 10976 KiB | |||
22 | Elfogadva | 4/4 | 59ms | 14124 KiB |