제출 #1327369

#제출 시각아이디문제언어결과실행 시간메모리
1327369gdshirpelengTrampoline (info1cup20_trampoline)C++20
43 / 100
422 ms122828 KiB
#include <bits/stdc++.h>

using namespace std;

using ll=long long;

#define in insert

#define pb push_back

ll xstart,xend,ystart,yend;

vector<vector<bool>>graph;
vector<vector<bool>>used;

bool ans=0;

ll R,C,N;

void dfs(ll x,ll y){

    if(x>R || y>C || ans || used[x][y]){

        return;

    }
    
    used[x][y]=1;

    if(x==xend && y==yend){

        ans=1;

        return;

    }

    if(graph[x][y]){
            if(y<=yend && x+1<=xend){
        dfs(x+1,y);
    }

    }
        if(y+1<=yend && x<=xend){
        dfs(x,y+1);
    }


}

void solve(){

    cin>>R>>C>>N;

    graph.assign(R+1,vector<bool>(C+1,0));

    ll u,v;

    for(int i=0;i<N;i++){

        cin>>u>>v;

        graph[u][v]=1;

    }

    ll q;

    cin>>q;

    while(q--){

        cin>>xstart>>ystart>>xend>>yend;

        ans=0;
        used.assign(R+1,vector<bool>(C+1,0));
        dfs(xstart,ystart);

        if(ans){

            cout<<"YES\n";

        }

        else{

            cout<<"NO\n";

        }

    }

}



int main(){

    solve();

    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...
#Verdict Execution timeMemoryGrader output
Fetching results...