enqueue($i); } } $ans = 0; $ans2 = []; while($q->count() > 0){ $i = $q->dequeue(); if($sw[$i]) { $ans++; $ans2[] = $i; } if(!isset($route[$i])) continue; foreach($route[$i] as $j => $v){ $cnt[$j]--; $sw[$j] = !$sw[$j]; if($cnt == 0){ $q->enqueue($j); } } } echo $ans; echo PHP_EOL; echo implode(PHP_EOL, $ans2);