foo.cc: In member function 'void Segtree::build(long long int, long long int, long long int)':
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:36:30: note: in expansion of macro 'mid'
36 | build(p<<1,l,mid);
| ^~~
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:37:30: note: in expansion of macro 'mid'
37 | build(p<<1|1,mid+1,r);
| ^~~
foo.cc: In member function 'void Segtree::upd_bian(long long int, long long int)':
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:42:23: note: in expansion of macro 'mid'
42 | if(x<=mid)upd_bian(p<<1,x);
| ^~~
foo.cc: In member function 'void Segtree::upd_dian(long long int, long long int)':
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:51:23: note: in expansion of macro 'mid'
51 | if(x<=mid)upd_dian(p<<1,x);
| ^~~
foo.cc: In member function 'Segtree::node Segtree::query(long long int, long long int, long long int)':
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:57:24: note: in expansion of macro 'mid'
57 | if(qr<=mid)return query(p<<1,ql,qr);
| ^~~
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:58:23: note: in expansion of macro 'mid'
58 | if(ql>mid)return query(p<<1|1,ql,qr);
| ^~~
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:59:41: note: in expansion of macro 'mid'
59 | return Up(query(p<<1,ql,mid),query(p<<1|1,mid+1,qr));
| ^~~
foo.cc:14:29: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
14 | #define mid (tr[p].L+tr[p].R>>1)
| ~~~~~~~^~~~~~~~
foo.cc:59:59: note: in expansion of macro 'mid'
59 | return Up(query(p<<1,ql,mid),query(p<<1|1,mid+1,qr));
| ^~~
Found 20 testcases.
[Hydro](https://hydro.ac)提供评测服务