Main.cc: In function ‘void slv()’: Main.cc:2:19: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation] #define Rf(i,a,b) for(int i=(a);i<=(b);i++) ^ Main.cc:29:5: note: in expansion of macro ‘Rf’ Rf(i,1,n) e[i].clear();s.clear(); ^~ Main.cc:29:28: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’ Rf(i,1,n) e[i].clear();s.clear(); ^ Main.cc:47:53: error: ‘k’ was not declared in this scope dr=*--upper_bound(s.begin(),s.end(),k); ^