#include #include #include #include using namespace std; int main() { long long n, q; cin >> n >> q; vector vals(n); for (int i = 0; i < n; ++i) { cin >> vals[i]; } vector> incr; pair curr; bool started = false; for (int i =0; i < n; ++i) { if (!started) { curr.first = i; started = true; } else { if (vals[i] < vals[i-1]) { curr.second = i-1; incr.push_back(curr); started = false; i--; } } } if (started) { curr.second = n-1; incr.push_back(curr); } vector> qs(n); for (long long i = 0; i < q; ++i) { long long s, e; cin >> s >>e; s--; e--; if (e == s) { cout << "YES\n"; continue; } bool is_val = false; for (int j = 0; j < incr.size(); ++j) { if (s >= incr[j].first && s incr[j].first) { is_val = true; break; } } } if (is_val) { cout << "YES\n"; } else { cout << "NO\n"; } } }