grader.c: In function 'int main()':
grader.c:18:6: warning: variable 'res' set but not used [-Wunused-but-set-variable]
int res;
^~~
game.cpp: In function 'll qry_y(int, int, int)':
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:8:21: note: in expansion of macro 'tm'
#define sol L[v],tl,tm
^~
game.cpp:41:19: note: in expansion of macro 'sol'
return gcd(qry_y(sol) , qry_y(sag));
^~~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:9:18: note: in expansion of macro 'tm'
#define sag R[v],tm+1,tr
^~
game.cpp:41:32: note: in expansion of macro 'sag'
return gcd(qry_y(sol) , qry_y(sag));
^~~
game.cpp: In function 'll qry_x(int, int, int)':
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:8:21: note: in expansion of macro 'tm'
#define sol L[v],tl,tm
^~
game.cpp:46:19: note: in expansion of macro 'sol'
return gcd(qry_x(sol) , qry_x(sag));
^~~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:9:18: note: in expansion of macro 'tm'
#define sag R[v],tm+1,tr
^~
game.cpp:46:32: note: in expansion of macro 'sag'
return gcd(qry_x(sol) , qry_x(sag));
^~~
game.cpp: In function 'void up_y(int, int, int, ll)':
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:55:12: note: in expansion of macro 'tm'
if(posy > tm) { if(!R[v]) R[v] = ++id; up_y(sag,t); }
^~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:9:18: note: in expansion of macro 'tm'
#define sag R[v],tm+1,tr
^~
game.cpp:55:46: note: in expansion of macro 'sag'
if(posy > tm) { if(!R[v]) R[v] = ++id; up_y(sag,t); }
^~~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:8:21: note: in expansion of macro 'tm'
#define sol L[v],tl,tm
^~
game.cpp:56:46: note: in expansion of macro 'sol'
else { if(!L[v]) L[v] = ++id; up_y(sol,t); }
^~~
game.cpp: In function 'void up_x(int, int, int)':
game.cpp:60:19: warning: this 'while' clause does not guard... [-Wmisleading-indentation]
if(id == N-2) while(1);
^~~~~
game.cpp:61:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'while'
if(tl < tr){
^~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:62:13: note: in expansion of macro 'tm'
if(posx > tm) { if(!R[v]) R[v] = ++id; up_x(sag); }
^~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:9:18: note: in expansion of macro 'tm'
#define sag R[v],tm+1,tr
^~
game.cpp:62:47: note: in expansion of macro 'sag'
if(posx > tm) { if(!R[v]) R[v] = ++id; up_x(sag); }
^~~
game.cpp:7:16: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
#define tm (tl+tr >> 1)
~~^~
game.cpp:8:21: note: in expansion of macro 'tm'
#define sol L[v],tl,tm
^~
game.cpp:63:47: note: in expansion of macro 'sol'
else { if(!L[v]) L[v] = ++id; up_x(sol); }
^~~