I am working on a practice competition problem, and having trouble determining what data structure I should use, and how I go about starting this problem. Initially I thought about using a HashMap, but that didn't work out very well. Here is the problem description:
You have been given bits and pieces of your family tree. Your task is to determine if two people are related based on several connections.
The first line will contain a single integer n that indicates the number of connections. The next n lines will consist of a name, a connection, and another name. The connections will be either mom, dad, brother, sister, daughter or son. The next line will contain a single integer m that indicates the number of test cases. The next m lines will consist of two names.
Your program should determine if the two names are related
Ouput either Related or Not Related, depending on whether they are connected or not. There will be m lines of output.
John brother Susan
Kim mom John
Dave son Jim
Example output to screen:
An approach on how to solve this would greatly be appreciated!