Maybe they're checking that you can't enter >100 characters for each name and that you ignore whitespace? Plus each name must start with an upper case char and all the rest must be lower case. Other than that I can't see what else it could be, unless their test case data is wrong!
On the left, output for the test case expected. On the right, your output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Mom: Happy
Dad: birthday
Girlfriend: to
Mom: you
Dad: Happy
Girlfriend: birthday
Mom: to
Dad: you
Girlfriend: Happy
Mom: birthday
Dad: to
Girlfriend: Rujia
Mom: Happy
Dad: birthday
Girlfriend: to
Mom: you
Mom: Happy
Dad: birthday
Girlfriend: to
Mom: you
Dad: Happy
Girlfriend: birthday
Mom: to
Dad: you
Girlfriend: Happy
Mom: birthday
Dad: to
Girlfriend: Rujia
Mom: Happy
Dad: birthday
Girlfriend: to
Mom: you
Well, if I edit my code to remove the endl both before and after the song output, according to the comment from cire above this code should give the same result: