intermediate20 min

Blood Relations

Translate a written family description into a relationship chain and answer correctly.

What you'll learn

  • Translate a sentence like 'X is Y's father' into a directional parent-child relationship
  • Determine whether two people are siblings from a shared-parent structure
  • Determine a grandparent relationship by chaining two parent-child links

Prerequisites

Explanation

Blood relation questions describe a family in a sentence or two and ask how two people are related. The entire skill is translating each sentence into a directional link and then chaining links together correctly.

"X is Y's father" means X is a parent of Y -- the relationship points from X down to Y. A common error is drawing it backward, as if Y were X's parent. Once every sentence is converted into a small directed diagram (an arrow from parent to child), the rest is just following arrows.

Siblings share at least one parent. If A and B both have M as a parent, A and B are siblings (or half-siblings, if only one parent is shared) -- the puzzle usually doesn't distinguish full from half unless it says so explicitly.

Grandparent relationships are two hops: if A is a parent of B, and B is a parent of C, then A is a grandparent of C. This is where most errors creep in on longer chains -- "my mother's only son" is not automatically "me" (unless you are that only son); it depends on how many sons your mother has and who's asking.

A classic trap: "Pointing to a photo, Rita said, 'He is the son of my mother's only son.'" Work it step by step. Rita's mother's only son is Rita's brother (assuming Rita is not that son -- the puzzle context makes clear a male relative is being described). The brother's son is Rita's nephew. Each step is a single, unambiguous hop; the puzzle only gets hard when you try to skip steps instead of writing each one down.

Two-generation family chain

A (parent) -> B (parent, child of A) -> C (child of B). A is B's parent and C's grandparent. B and any of A's other children are C's aunt/uncle or siblings of B, depending on the level.

Example

Checking whether two people share a parent in a small family record.

function isSiblingOf(p1, p2, family) {
  if (p1 === p2) return false;
  const parents1 = family[p1]?.parents || [];
  const parents2 = family[p2]?.parents || [];
  return parents1.some((p) => parents2.includes(p));
}
// isSiblingOf('A', 'B', { A: { parents: ['M'] }, B: { parents: ['M'] } }) -> true

Guided exercise

Guided exercise

Write isSiblingOf(p1, p2, family) where family maps each person's name to { parents: [...] }. Return true if p1 and p2 share at least one parent and are not the same person, false otherwise.

Checks: Recognizes a shared parent as siblings · Rejects two people with different parents · plus 1 hidden check

Code editor. Press Escape then Tab to leave the editor if keyboard focus becomes trapped. Press Control+Shift+M inside the editor to toggle Tab-key focus trapping.

Loading editor…

Stuck? Get a hint.

Independent exercise

Independent exercise

Write isGrandparentOf(p1, p2, family) where family maps each person to { parents: [...] }. Return true if p1 is a parent of one of p2's parents.

Checks: Recognizes a genuine two-hop grandparent chain · Does not confuse a direct parent with a grandparent · plus 1 hidden check

Code editor. Press Escape then Tab to leave the editor if keyboard focus becomes trapped. Press Control+Shift+M inside the editor to toggle Tab-key focus trapping.

Loading editor…

Stuck? Get a hint.

Common mistakes

  • Drawing 'X is Y's father' backward, as if Y were the parent of X.
  • Skipping intermediate steps in a multi-hop chain instead of resolving one relationship at a time.
  • Assuming a shared surname or a vague description implies a specific relationship without a stated link.

Knowledge check

Knowledge check

1. Pointing to a photo, Rita said, 'He is the son of my mother's only son.' How is the boy in the photo related to Rita?
2. If A is B's father and C is A's mother, how is C related to B?
3. What is the most common error when translating 'X is Y's father' into a diagram?

Takeaway

Convert every relationship sentence into a directional parent-child link before combining them -- the direction is where most errors happen.

Summary

Blood relation puzzles are solved by translating each sentence into a directed parent-child link, then chaining links to answer sibling, grandparent, or more distant relationship questions.

Your notes

Notes save automatically.

Finished this lesson?

Mark it complete to track your progress and schedule a future review.

Next: Direction Sense