1533 | 2022. 11. 22 12:50:22 | kicsiboglar | Tom és Jerry 1 (80) | cpp11 | Wrong answer 8/80 | 46ms | 13240 KiB |
#include <iostream>
#include <vector>
#include <deque>
#define ll long long
using namespace std;
//ifstream cin ("input.in");
//ofstream cout ("output.out");
ll n,m,i,j,a,b,c,k,tomstart,jerrystart,p;
struct element
{
ll seen_jerry=-1, seen_tom=-1;
bool tom;
ll lasttom;
vector <ll> sz;
};
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
cin>>n>>m>>tomstart>>p>>jerrystart;
vector <element> x(n+1);
x[tomstart].seen_tom=0;
x[jerrystart].seen_jerry=0;
for (i=1;i<=m;++i)
{
cin>>a>>b>>c;
x[a].sz.push_back(b);
x[b].sz.push_back(a);
if (c==2)
{
x[a].tom=true;
x[b].tom=true;
}
}
deque<ll> v;
v.push_back(tomstart);
ll curr=0;
while (!v.empty())
{
curr=v[0];
v.pop_front();
for (auto& e:x[curr].sz)
{
if (x[e].seen_tom==-1&&x[e].tom)
{
x[e].seen_tom=x[curr].seen_tom+1;
v.push_back(e);
}
}
}
v.push_back(jerrystart);
curr=0;
while (!v.empty())
{
curr=v[0];
v.pop_front();
if (x[curr].seen_tom!=-1) x[curr].lasttom=curr;
for (auto& e:x[curr].sz)
{
if (x[e].seen_jerry==-1)
{
x[e].seen_jerry=x[curr].seen_jerry+1;
x[e].lasttom=x[curr].lasttom;
v.push_back(e);
}
}
}
for (i=1;i<=p;++i)
{
cin>>a;
if (x[a].lasttom==0) cout<<"IGEN\n";
else
{
if (x[a].seen_jerry-x[x[a].lasttom].seen_jerry>=x[x[a].lasttom].seen_tom) cout<<"NEM\n";
else cout<<"IGEN\n";
}
}
}
Subtask | Sum | Test | Verdict | Time | Memory | ||
---|---|---|---|---|---|---|---|
base | 8/80 | ||||||
1 | Accepted | 0/0 | 3ms | 1828 KiB | |||
2 | Wrong answer | 0/0 | 3ms | 2564 KiB | |||
3 | Wrong answer | 0/4 | 2ms | 2276 KiB | |||
4 | Wrong answer | 0/4 | 2ms | 2448 KiB | |||
5 | Wrong answer | 0/4 | 2ms | 2660 KiB | |||
6 | Wrong answer | 0/4 | 2ms | 2868 KiB | |||
7 | Wrong answer | 0/4 | 2ms | 3108 KiB | |||
8 | Accepted | 4/4 | 3ms | 3472 KiB | |||
9 | Wrong answer | 0/4 | 3ms | 3492 KiB | |||
10 | Wrong answer | 0/4 | 3ms | 3680 KiB | |||
11 | Wrong answer | 0/4 | 6ms | 4092 KiB | |||
12 | Accepted | 4/4 | 8ms | 5016 KiB | |||
13 | Wrong answer | 0/4 | 12ms | 5536 KiB | |||
14 | Wrong answer | 0/4 | 23ms | 7896 KiB | |||
15 | Wrong answer | 0/4 | 32ms | 9136 KiB | |||
16 | Wrong answer | 0/4 | 39ms | 12640 KiB | |||
17 | Wrong answer | 0/4 | 46ms | 12292 KiB | |||
18 | Wrong answer | 0/4 | 30ms | 10408 KiB | |||
19 | Wrong answer | 0/4 | 30ms | 11396 KiB | |||
20 | Wrong answer | 0/4 | 30ms | 11620 KiB | |||
21 | Wrong answer | 0/4 | 28ms | 10192 KiB | |||
22 | Wrong answer | 0/4 | 46ms | 13240 KiB |