title: CS50- pset3-tideman: lock_pairs did not correctly lock all non-cyclical pairs
body: <p>Not able to figure out the test case, where this code is failing. All green except for this error: CS50- pset3-tideman: lock_pairs did not correctly lock all non-cyclical pairs. <strong>I need to know the logical flaw here, more than the solution.</strong></p>
  <p>// Lock pairs into the candidate graph in order, without creating cycles</p>
  <pre><code>void lock_pairs(void)
  {
      // TODO
      for (int i = 0; i &lt; pair_count; i ++)
      {
          if(!is_circle(pairs[i].loser, pairs[i].winner))
          {
              locked[pairs[i].winner][pairs[i].loser] = true;
          }
  
      }
      return;
  }
  
  bool is_circle(int loser, int winner)
  {
      if (loser == winner)
      {
          return true;
      }
      for (int i = 0; i &lt; pair_count; i ++)
      {
          if (locked[loser][i])
          {
              return is_circle(i, winner);
          }
      }
      return false;
  }
  </code></pre>