Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- vector <vector <int> > a;
- int main() {
- cin >> n >> m;
- a.resize(n + 1);
- for (int i = 1; i <= n; i++) {
- a[i].resize(m + 1);
- L[i] = i;
- for (int j = 1; j <= m; j++)
- cin >> a[i][j];
- }
- for (int j = 1; j <= m; j++) {
- int last = 1000000000, last_pos = 0;
- for (int i = 1; i <= n; i++) {
- if (last > a[i][j]) last_pos = i;
- last = a[i][j];
- L[i] = min(L[i], last_pos);
- }
- }
- cin >> q;
- for (int i = 1, l, r; i <= q; i++) {
- cin >> l >> r;
- if (L[r] <= l)
- cout << "Yes";
- else
- cout << "No";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement