#include #include #include #include #include #include #include #include //#include std::vector, bool>> g_previous; //int g_no_previous = 0; bool test_freq(int t_start, int t_end, std::vector& t_frequencies) { bool l_result = true; // previous intervals for (int l_idx = 0; l_idx < g_previous.size(); l_idx++) { } // new interval for (int l_idx = t_start - 1; l_idx < t_end - 1; l_idx++) if (t_frequencies[l_idx] > t_frequencies[l_idx + 1]) return false; return l_result; } int main() { int l_no_freq, l_no_queries; std::cin >> l_no_freq >> l_no_queries; // in freq std::vector l_frequencies(l_no_freq); for (int l_idx = 0; l_idx < l_no_freq; l_idx++) { std::cin >> l_frequencies[l_idx]; } // queries for (int l_idx = 0; l_idx < l_no_queries; l_idx++) { int l_qstart, l_qend; std::cin >> l_qstart >> l_qend; std::pair l_indexes; l_indexes.first = l_qstart; l_indexes.second = l_qend; std::pair, bool> l_current; l_current.first = l_indexes; if (test_freq(l_qstart, l_qend, l_frequencies)) { std::cout << "YES\n"; l_current.second = true; } else { std::cout << "NO\n"; l_current.second = false; } } }