This week's book giveaway is in the Go forum.We're giving away four copies of Head First Go and have Jay McGavren on-line!See this thread for details.
Win a copy of Head First Go this week in the Go forum!
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
• Campbell Ritchie
• Liutauras Vilda
• Bear Bibeault
• Paul Clapham
• Jeanne Boyarsky
Sheriffs:
• Devaka Cooray
• Junilu Lacar
• Tim Cooke
Saloon Keepers:
• Tim Moores
• Ron McLeod
• Tim Holloway
• Claude Moore
• Stephan van Hulst
Bartenders:
• Winston Gutkowski
• Carey Brown
• Frits Walraven

# Practice Competition Problem Help

Greenhorn
Posts: 27
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.

INPUT

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

Output

Ouput either Related or Not Related, depending on whether they are connected or not. There will be m lines of output.

EXAMPLE:
input:

3
John brother Susan
Kim mom John
Dave son Jim
2
Jim John
Kim Susan

Example output to screen:
Not related
Related

An approach on how to solve this would greatly be appreciated!

Marshal
Posts: 63478
207
I suggest you start by drawing some family trees by hand, and seeing how the different relationships can be depicted. Tha will allow you to model relationships like “brother” or “daughter”.

 I've got no option but to sell you all for scientific experiments. Or a tiny ad: Become a Java guru with IntelliJ IDEA https://www.jetbrains.com/idea/