As the title, 1e18 + 1 == 1e18 in C++.
This is because the double type stores the first 53 binary bits of a number. So the number 1 will be ignored.
And most of submissions which fst on test 13 of problem C of edu round 187 are for this reason.
UPD: I collected some suggestions from the comments:
- Use
1000000000000000001(I do not suggest it because it is prone to errors.) - Use
(long long)(1e18) + 1 - Use
1e18L + 1 - Use
1'000'000'000'000'000'001LL








