Submission #60136963


Source Code Expand

#include<bits/stdc++.h>
#include"atcoder/all"
using namespace std;
using namespace atcoder;
#define rep(i,n) for(int i=0;i<(n);i++)
#define all(a) a.begin(),a.end()
typedef long long ll;
typedef vector<ll> vi;
typedef pair<ll,ll> P;
const ll mod=998244353;
const ll inf=1ll<<61;
typedef modint998244353 mi;

int x[100160],y[100160];
int a[100160],b[100160];
vector<int>G[100160];
vector<P>Q[100160];
bitset<320>B[100160];
bool ans[100160];

int main(){
	int n,m,q;cin>>n>>m>>q;
	rep(i,m){
		cin>>x[i]>>y[i];
		x[i]--;y[i]--;
		G[x[i]].push_back(y[i]);
	}
	rep(i,q){
		cin>>a[i]>>b[i];
		a[i]--;b[i]--;
		Q[a[i]].push_back({b[i],i});
	}

	for(int i=0;i<n;i+=320){
		rep(j,n)B[j].reset();
		for(int j=0;j<320;j++)B[i+j].set(j);
		
		for(int j=i;j<n;j++){
			for(auto &e:G[j]){
				B[e]|=B[j];
			}
		}

		for(int j=i;j<i+320;j++){
			if(j>=n)break;
			for(auto &e:Q[j]){
				if(B[e.first][j-i])ans[e.second]=true;
				else ans[e.second]=false;
			}
		}

	}

	rep(i,q){
		if(ans[i])cout<<"Yes"<<endl;
		else cout<<"No"<<endl;
	}
}

Submission Info

Submission Time
Task 059 - Many Graph Queries(★7)
User Rho17
Language C++ 20 (gcc 12.2)
Score 7
Code Size 1084 Byte
Status AC
Exec Time 381 ms
Memory 19624 KiB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 2 / 2 5 / 5
Status
AC × 3
AC × 14
AC × 26
Set Name Test Cases
Sample sample01.txt, sample02.txt, sample03.txt
Subtask1 sample01.txt, sample02.txt, sample03.txt, subtask1_all_yes.txt, subtask1_max00.txt, subtask1_max01.txt, subtask1_max02.txt, subtask1_max03.txt, subtask1_max04.txt, subtask1_random00.txt, subtask1_random01.txt, subtask1_random02.txt, subtask1_random03.txt, subtask1_random04.txt
All sample01.txt, sample02.txt, sample03.txt, subtask1_all_yes.txt, subtask1_max00.txt, subtask1_max01.txt, subtask1_max02.txt, subtask1_max03.txt, subtask1_max04.txt, subtask1_random00.txt, subtask1_random01.txt, subtask1_random02.txt, subtask1_random03.txt, subtask1_random04.txt, subtask2_all_yes.txt, subtask2_dense00.txt, subtask2_dense01.txt, subtask2_dense02.txt, subtask2_dense_max.txt, subtask2_max_random00.txt, subtask2_max_random01.txt, subtask2_max_random02.txt, subtask2_max_random03.txt, subtask2_max_random04.txt, subtask2_mid_dense00.txt, subtask2_mid_dense01.txt
Case Name Status Exec Time Memory
sample01.txt AC 2 ms 3552 KiB
sample02.txt AC 2 ms 3588 KiB
sample03.txt AC 2 ms 3548 KiB
subtask1_all_yes.txt AC 5 ms 3912 KiB
subtask1_max00.txt AC 5 ms 4028 KiB
subtask1_max01.txt AC 5 ms 3972 KiB
subtask1_max02.txt AC 6 ms 3828 KiB
subtask1_max03.txt AC 5 ms 3800 KiB
subtask1_max04.txt AC 5 ms 3836 KiB
subtask1_random00.txt AC 3 ms 3636 KiB
subtask1_random01.txt AC 5 ms 3908 KiB
subtask1_random02.txt AC 2 ms 3592 KiB
subtask1_random03.txt AC 4 ms 3824 KiB
subtask1_random04.txt AC 4 ms 3908 KiB
subtask2_all_yes.txt AC 303 ms 19624 KiB
subtask2_dense00.txt AC 52 ms 5336 KiB
subtask2_dense01.txt AC 45 ms 5048 KiB
subtask2_dense02.txt AC 105 ms 6528 KiB
subtask2_dense_max.txt AC 144 ms 8596 KiB
subtask2_max_random00.txt AC 372 ms 18128 KiB
subtask2_max_random01.txt AC 380 ms 18288 KiB
subtask2_max_random02.txt AC 375 ms 18172 KiB
subtask2_max_random03.txt AC 381 ms 18096 KiB
subtask2_max_random04.txt AC 374 ms 18124 KiB
subtask2_mid_dense00.txt AC 143 ms 8720 KiB
subtask2_mid_dense01.txt AC 159 ms 9332 KiB