The correct answer is July 16, but I get torn up at one point.
Since Albert and Bernard don’t know the same information but Albert knows that Bernard doesn’t know a particular piece of information, you can assume that any information that does not share a month or date can be eliminated.
For instance, there’s only one instance of 19, so May 19 is out. Likewise, there’s only one instance of 18, so June 18 is out. This also eliminates June 17 since only one June would be left and that eliminates August 17 since there would be no other 17.
That leaves May 15 & 16, July 14 & 16, and August 14 & 15. Since there are two instances of each month and two instances of each date, I’m left wondering how they get down to July 16, but that is the correct answer.
Supposedly that’s the correct answer, but I honestly can’t see how you can deduce the correct date if it’s one of the dates with a duplicate day.
Albert and Bernard each have been given correct data.
Albert was given the month but, as there are multiple possibilities within each month, he can not determine the date.
Bernard was given the day. Possible days are: 14, 15, 16, 17, 18, and 19. Except for 18 and 19 there are multiple occurrances of each day.
Albert announces that he knows that Bernard can not know the date. This tells Bernard that the day is not unique. Therefore May 19 and June 18 can be ruled out.
There is now only one month with a single possible day: June. Therefore June 17
Now Bernard says he knows the answer, which means Bernard now knows the month. That is only possible if the day Bernard is holding is the 16th. If it's the 14th, Bernard would only know that Albert had either July or August -- which tells him nothing new, since he already knew that on the basis of what Albert said. The only way out is July 16th.
Now knowing that Bernard knows, Albert knows what we know, so he knows as well.
Here’s how I came up with July 16th.
1) Albert knows that Bernard doesn’t know—which is saying the day of the month is not unique. Which means Albert wasn’t told “May” or “June”, because those months have unique days (18 & 19), thus they would have been possible for Bernard to know. Thus, just Albert’s statement narrows the birth month down to July & August.
2) Bernard went from not knowing the date to knowing the date. That rules out the day being 14, since Bernard would not know if Albert was told July or August. So Bernard was told 15, 16, or 17. This narrows the possibilities to July 16, August 15, or August 17.
3) Now Albert knows the date too. If Albert had been told August, he still would not know if it’s August 15 or August 17. That means it must be July 16.
However, to think this is 5th grade level in Singapore is amazing!