shoes.cpp: In member function 'void segtree::update(int, int, int, int, int)':
shoes.cpp:27:21: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
27 | update(i<<1, s, s+e>>1, j, x);
| ~^~
shoes.cpp:28:20: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
28 | update(i<<1|1, s+e>>1, e, j, x);
| ~^~
shoes.cpp: In member function 'int segtree::query(int, int, int, int, int)':
shoes.cpp:35:26: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
35 | return query(i<<1, s, s+e>>1, l, r)+query(i<<1|1, s+e>>1, e, l, r);
| ~^~
shoes.cpp:35:54: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
35 | return query(i<<1, s, s+e>>1, l, r)+query(i<<1|1, s+e>>1, e, l, r);
| ~^~
shoes.cpp: In function 'll count_swaps(std::vector<int>)':
shoes.cpp:48:28: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
48 | for(int i = 0, cnt = 0; i < s.size(); i++) {
| ~~^~~~~~~~~~
shoes.cpp:60:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
60 | for(int i = 0; i < s.size(); i++) {
| ~~^~~~~~~~~~