Rafi's blog

By Rafi, 20 months ago, In English

I have submitted the following code in c++14, where I used policy based data structure(pbds), which didn't passed due to tle in the system test. In c++17, the result is also tle.
problem link: https://codeforces.net/contest/1794/problem/C
submission link:https://codeforces.net/contest/1794/submission/196039857

But I submitted the same code with c++20(64 bit, winlibs) and got accepted.
submission link: https://codeforces.net/contest/1794/submission/196061031

What is the reason? Can anyone help?

  • Vote: I like it
  • 0
  • Vote: I do not like it

»
20 months ago, # |
  Vote: I like it 0 Vote: I do not like it

It may be due to some compiler optimizations in the newer compiler that may have better optimization techniques that can make the code run faster, thus avoiding the TLE error.

Refer to the blog for more understanding.

Click Here

»
20 months ago, # |
  Vote: I like it 0 Vote: I do not like it

the simple reason is that 64bit runs much faster than 32bit

»
20 months ago, # |
  Vote: I like it 0 Vote: I do not like it

that is the reason i used c++20