Main.cc: In function ‘void bd(long long int, long long int, long long int)’:
Main.cc:63:16: error: no match for ‘operator=’ (operand types are ‘node’ and ‘’)
T[x]={0,0,0,1};
^
Main.cc:26:8: note: candidate: node& node::operator=(const node&)
struct node{
^~~~
Main.cc:26:8: note: no known conversion for argument 1 from ‘’ to ‘const node&’
Main.cc:26:8: note: candidate: node& node::operator=(node&&)
Main.cc:26:8: note: no known conversion for argument 1 from ‘’ to ‘node&&’
Main.cc:66:11: warning: suggest parentheses around ‘+’ inside ‘>>’ [-Wparentheses]
int mid=l+r>>1;
~^~
Main.cc: In function ‘void add(long long int, long long int, long long int, long long int, long long int, long long int, long long int)’:
Main.cc:79:11: warning: suggest parentheses around ‘+’ inside ‘>>’ [-Wparentheses]
int mid=l+r>>1;
~^~
Main.cc: In function ‘int main()’:
Main.cc:125:9: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
freopen("route.in","r",stdin);
~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
Main.cc:126:9: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
freopen("route.out","w",stdout);
~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~