diff --git a/range_queries/sparse_table_range_queries.cpp b/range_queries/sparse_table_range_queries.cpp index 4f13945ba1..68de91db2e 100644 --- a/range_queries/sparse_table_range_queries.cpp +++ b/range_queries/sparse_table_range_queries.cpp @@ -83,10 +83,19 @@ std::vector > buildTable(const std::vector& A, template int getMinimum(int beg, int end, const std::vector& logs, const std::vector >& table) { + if(beg<0||end<=(int)table[0].size()){ + cout<<"Error:querry range ["<= (int)table.size() || beg >= (int)table[p].size() || (end - pLen + 1) >= (int)table[p].size()) { + std::cerr << "Error: index out of bounds when accessing sparse table." << std::endl; + return -1; + } return std::min(table[p][beg], table[p][end - pLen + 1]); } + } // namespace sparse_table } // namespace range_queries