/*
ID: Sho10
LANG: C++
*/
#include <bits/stdc++.h> //Andrei Alexandru a.k.a Sho10
#define ll long long int
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define all(a) (a).begin(), (a).end()
#define sz size
#define f first
#define s second
#define pb push_back
#define er erase
#define in insert
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define endl '\n'
#define mod 1000000007
#define PI 3.14159265359
#define CODE_START ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
ll n,m,q,t,a[2505][2505],x,y,val,viz[2505][2505];
int32_t main(){
CODE_START;
cin>>n>>m>>val;
for(ll i=0;i<val;i++)
{
cin>>x>>y;
a[x][y]=1;
}
ll xx,yy,xs,ys;
cin>>t;
while(t--){
cin>>xs>>ys>>xx>>yy;
queue<ll>q1;
queue<ll>q2;
q1.push(xs);
q2.push(ys);
for(ll i=1;i<=2500;i++)
for(ll j=1;j<=2500;j++){
viz[i][j]=0;
}
viz[xs][ys]=1;
while(!q1.empty()){
x=q1.front();
y=q2.front();
if(a[x][y]==1){
if(y+1<=m){
if(viz[x][y+1]==0&x==xx){
q1.push(x);
q2.push(y+1);
viz[x][y+1]=1;
}
}
if(x+1<=n&&x<xx){
if(viz[x+1][y]==0){
q1.push(x+1);
q2.push(y);
viz[x+1][y]=1;
}
}
}else {
if(y+1<=m){
if(viz[x][y+1]==0){
q1.push(x);
q2.push(y+1);
viz[x][y+1]=1;
}
}
}
if(x==xx&&y==yy){
break;
}
q2.pop();
q1.pop();
}
if(viz[xx][yy]==1){
cout<<"Yes"<<endl;
}else cout<<"No"<<endl;
}
}
Compilation message
trampoline.cpp: In function 'int32_t main()':
trampoline.cpp:51:31: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
if(viz[x][y+1]==0&x==xx){
~~~~~~~~~~~^~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1201 ms |
50532 KB |
200 token(s): yes count is 21, no count is 179 |
2 |
Correct |
1202 ms |
50292 KB |
200 token(s): yes count is 70, no count is 130 |
3 |
Correct |
1218 ms |
50516 KB |
197 token(s): yes count is 25, no count is 172 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
2084 ms |
98400 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
9 ms |
512 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
10 ms |
488 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Runtime error |
9 ms |
512 KB |
Execution killed with signal 11 (could be triggered by violating memory limits) |
2 |
Halted |
0 ms |
0 KB |
- |