제출 #1177490

#제출 시각아이디문제언어결과실행 시간메모리
1177490huypham2009Long Mansion (JOI17_long_mansion)C++20
5 / 100
3095 ms16480 KiB
#include <bits/stdc++.h> using namespace std; const int maxn=5e5+5; int n,m,q,c[maxn]; vector<int>keys[maxn]; bool xtoy(int x,int y) { set<int>s; for(auto v:keys[x])s.insert(v); int i=x,j=x; while(i!=y&&j!=y) { if(s.find(c[j])!=s.end()) { j++; for(auto v:keys[j])s.insert(v); continue; } if(s.find(c[i-1])!=s.end()) { i--; for(auto v:keys[i])s.insert(v); continue; } return 0; } return 1; } int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n; for(int i=1;i<n;i++)cin>>c[i]; for(int i=1;i<=n;i++) { int k; cin>>k; for(int j=1;j<=k;j++) { int tmp; cin>>tmp; keys[i].push_back(tmp); } } cin>>q; while(q--) { int x,y; cin>>x>>y; if(xtoy(x,y))cout<<"YES\n"; else cout<<"NO\n"; } 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...