You are not logged in. Please login at to post your questions!


Same Solutions but different results

Hello Everyone, I came across the problem named CHOCPAIR. I tried to solve it but failed. I look at @tciitb's solution. My idea is the same as his. Still, my solution wasn't accepted. So I followed his code. But still, my code produces the wrong answer. Someone, Please help.

Problem Link :

My solution :

@tciitb's solution:

asked 25 Aug '18, 18:32

ankush_953's gravatar image

accept rate: 8%

When you are accessing m[b] when b doesn't exist in the unordered map, it inserts that key with a value of 0. This insertion could cause iterator invalidation, and hence your loop goes for a toss.

Have a look at the "Iterator invalidation" section of

"insert, emplace, emplace_hint, operator[] - Only if causes rehash"

This is probably the issue.


answered 30 Aug '18, 20:36

admin's gravatar image

0★admin ♦♦
accept rate: 36%

I don't have much knowledge about C++, but you didn't check if the value 'b' is present in the set.
Checking it yields TLE (which can be removed by using 'printf' and 'scanf'). Most probably, 'getitem' returns a dump value if the key is not present in the set.

ACed solution:
WA solution: (same code without the 'contains' check)


answered 25 Aug '18, 19:17

sarthakmanna's gravatar image

accept rate: 38%

edited 25 Aug '18, 19:17

Thank you for help :) but whenever an element is not present in the map, it returns zero so answer shouldn't have been affected by checking the presence of element at all.

(25 Aug '18, 21:44) ankush_9534★

You are not using reserve() function which is giving you wrong answer. Don't know much about performance of unordered map. But this might help
your solution gives A/C with reserve()-


answered 25 Aug '18, 19:26

pant0000's gravatar image

accept rate: 10%

Thank you for help :) but the use of reserve and max_load_factor seems just optimization. Can you tell me What part did they play here?

(25 Aug '18, 21:40) ankush_9534★

@vijju123 please help with this issue...really confused about working of unordered_map in STL.


answered 27 Aug '18, 17:53

pant0000's gravatar image

accept rate: 10%

Okay, looking at it.

(27 Aug '18, 18:17) vijju123 ♦♦5★
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported
  • mathemetical formulas in Latex between $ symbol

Question tags:


question asked: 25 Aug '18, 18:32

question was seen: 203 times

last updated: 30 Aug '18, 20:36