Why does global vector avoid TLE

Revision en4, by Itachi_Uchiha13, 2024-05-25 12:41:07

I was solving 1955G - GCD on a grid, and I made 2 submissions. The first one 262439330 which gave TLE. The second one 262487569 ran in just 765ms.

The only change I made in these 2 submissions is that I declared a vector isposs globally instead of declaring it again in the function isPoss. Does memory allocation in C++ really have such a large overhead, or is there any other reason? I mean it takes more than 4x time to run, which is unexpected to me.

 Link of diff: https://www.diffchecker.com/vVXUaFzd/

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en4 English Itachi_Uchiha13 2024-05-25 12:41:07 57
en3 English Itachi_Uchiha13 2024-05-25 12:38:32 101
en2 English Itachi_Uchiha13 2024-05-25 12:22:51 13
en1 English Itachi_Uchiha13 2024-05-25 11:04:05 512 Initial revision (published)