GCC strange behavior (operator[] for unordered_map for missing values)

Revision en1, by andpar, 2021-10-25 20:04:58

I am trying to solve Educational Round 115 Problem C by storing number of occurrences in the map. My submission works with MSVC https://codeforces.net/contest/1598/submission/133072945 but doesn't work with GCC https://codeforces.net/contest/1598/submission/133071532. I can't repro it locally so I can't debug it but adding check for non-existing values https://codeforces.net/contest/1598/submission/133073553 fixes the problem.

So it looks like that for missing integer values operator[] for unordered_map instead of returning 0 (default initialized value), returns uninitialized value which looks really weird. Am I missing something here?

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en1 English andpar 2021-10-25 20:04:58 1022 Initial revision (published)