rect.cpp: In member function 'void staticrmq::init(const std::vector<int>&)':
rect.cpp:14:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
14 | for (int i = 0; i < a.size(); i++)
| ~~^~~~~~~~~~
rect.cpp:16:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
16 | for (int e = 1; e < arr[0].size(); e++)
| ~~^~~~~~~~~~~~~~~
rect.cpp:17:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
17 | for (int i = 0; i < a.size() - (1 << e) + 1; i++)
| ~~^~~~~~~~~~~~~~~~~~~~~~~~~
rect.cpp: In function 'long long int count_rectangles(std::vector<std::vector<int> >)':
rect.cpp:68:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
68 | for (int i = 0; i < a.size(); i++)
| ~~^~~~~~~~~~
rect.cpp:70:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
70 | for (int i = 0; i < a[0].size(); i++)
| ~~^~~~~~~~~~~~~
rect.cpp:73:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
73 | for (int e = 0; e < a.size(); e++)
| ~~^~~~~~~~~~
rect.cpp:80:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
80 | for (int r1 = 0; r1 < a.size(); r1++)
| ~~~^~~~~~~~~~
rect.cpp:82:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
82 | for (int c1 = 0; c1 < a[0].size(); c1++)
| ~~~^~~~~~~~~~~~~
rect.cpp:84:29: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
84 | for (int r2 = r1 + 2; r2 < a.size(); r2++)
| ~~~^~~~~~~~~~
rect.cpp:86:30: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
86 | for (int c2 = c1 + 2; c2 < a[0].size(); c2++)
| ~~~^~~~~~~~~~~~~