Skip to content

Dialog between Joseph and Mary

Joseph: Hey Mary, I’ve got a fun challenge for you. You’re given hundreds of Lego pieces with different gradients of colors. Your task is to sort them in the quickest amount of time possible. The person or team with the lowest latency wins the prize! What do you think?

Mary: That sounds like a great challenge, Joseph! But before I jump in, I’ve got a few questions to clarify the problem a bit. First off, when you say 'sort by color gradients,' how specific are we talking? Do I need to sort them by general color groups like red, blue, green first, or should I arrange them based on every tiny shade difference?

Joseph: Good question! You need to sort them based on every shade difference, but you can start with general color groups to help. The goal is to have a perfectly smooth gradient at the end.

Mary: Got it, so precision is key. Next, what’s the size of the set we’re dealing with here? You said hundreds of pieces, but is it closer to 100 or more like 500? This will help me figure out how to break up the work.

Joseph: It’s actually closer to 300 pieces.

Mary: Alright, 300. Now, is there a specific color model we’re using? Like, are we sorting by RGB values or something like HSL, where we’re considering hue and lightness?

Joseph: Good point. Let’s go with RGB values. It’ll be easier to visualize and group that way.

Mary: Thanks! I’m also curious, how are the Lego pieces presented to me? Are they all mixed together in one big pile, or are they semi-sorted already? That might change how I approach the initial sorting.

Joseph: They’re completely mixed up in a pile. You’re starting from scratch.

Mary: Got it! One last thing—am I doing this alone, or can I team up with others to speed things up?

Joseph: You can have a team of up to 3 people! You can divide the work however you like.

Mary: Perfect! I think I’m ready to start planning. I’ll probably split the pieces into broad color groups first and then have each person on my team work on refining the gradients within their group.


Questions and Their Purpose:

  1. How specific should the sorting be?
  2. Open-ended: Leads to understanding the level of precision required (broad color groups vs. fine shades).

  3. How many pieces are we dealing with?

  4. Open-ended: Affects the approach to dividing the task (small vs. large set).

  5. What color model should we use?

  6. Constraint-refining: Helps in determining a measurable sorting method (e.g., RGB or HSL).

  7. How are the Lego pieces presented?

  8. Open-ended: Clarifies the starting condition (mixed vs. semi-sorted).

  9. Can I have a team?

  10. Constraint-refining: Expands the approach to incorporate teamwork and task division.

By starting with open-ended questions and then moving toward specific constraints, Mary refines her understanding of the problem and is able to craft an efficient solution.