Hello Codeforcers! I would like to share something which I had experienced in one of the contest.

Never use **.size()-x** in C++. Because the size() method returns the unsigned int value, So if the vector is empty and you try to subtract x from the value, then instead of giving -x it will give max value of unsigned int (Cyclic way).

It will lead to lots of problems. For example, if you use in for loops it will crash the program.

for(int i=0; i < vec.size()-1; i++){ // it will run unsigned max times if the vector is empty! }

it is also same for all inbuilt data structures in C++ (string, stack,...). To avoid this, typecast the size into int. Example: **int(vec.size())-1** or **(int)vec.size()-1**. Another way is store in int variable and subtract value from it.