This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define int long long
#define float double
#define pb push_back
#define F first
#define S second
#define T int t; cin >> t; while(t--)
#define IOS ios::sync_with_stdio(); cin.tie(0); cout.tie(0);
using namespace std;
const int inf = 8e18;
const int N = 1e6 + 6;
const int M = 1e3 + 3;
const int mod = 1e9 + 7;
const float pi = atan(1) * 4;
int r, c, n;
map<int, set<int>> tramps;
main()
{
cin >> r >> c >> n;
for(int i = 0; i < n; i++)
{
int y, x;
cin >> y >> x;
tramps[y].insert(x);
}
T
{
int x1, x2, y1, y2;
cin >> y1 >> x1 >> y2 >> x2;
int last = y1;
for(auto x: tramps)
{
if (x.F < y1)
continue;
if (x.F - last > 1)
{
y1 = -1;
break;
}
if (y1 == y2)
break;
if (tramps[y1].end() == tramps[y1].lower_bound(x1))
break;
x1 = *tramps[y1].lower_bound(x1);
y1 = x.F + 1;
last = x.F;
if (x1 > x2)
{
y1 = -1;
break;
}
}
if (y1 == y2)
cout << "Yes\n";
else
cout << "No\n";
}
}
/*
4 5 2
2 2
3 4
3
2 1 4 5
1 2 1 4
2 3 4 4
*/
Compilation message (stderr)
trampoline.cpp:20:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
20 | main()
| ^~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |