1

歌うN人のユーザーがいるテーブルプレーヤーがあります! そのリストからランダムにユニークなチームを作成する必要があります!

現在私が使用している@geomagasに最適です:

    $nteams=$_POST['teams']; 
    $nbase=$_POST['base'];
    $npivots=$_POST['pivots']; 
    $allplayers=$nteams*($nbase+$npivots);
    require_once "connect_to_mysql.php"; 
    $sqlCommand = "SELECT id FROM players ORDER BY RAND() LIMIT $allplayers";
    $query = mysql_query($sqlCommand) or die (mysql_error()); 
    if(mysql_num_rows($query)<$allplayers) // sanity
      die('Not enough players!');
    else
      for($team=1;$team<=$nteams;$team++)
        {
        for($base=1;$base<=$nbase;$base++)
          {
          $row = mysql_fetch_array($query);
          echo "Team $team Base $base = {$row['id']}<br />";
          }
        for($pivot=1;$pivot<=$npivots;$pivot++)
          {
          $row = mysql_fetch_array($query);
          echo "Team $team Pivot $pivot  = {$row['id']}<br />";
          }
        }
    mysql_close();

最初はチームの数を生成することを考えていましたが、プレイヤーの数がそれほど多くない可能性があることに気付きました。最初にチーム、ベース、およびピボットの数を設定/入力できるようにしたい場合は、ベースとピボットの数のみを入力してチームを生成します。例: 2 つのピボットで 3 つのベースを入力すると、結果は次のようになります。

チーム 1 ベース 1 ピボット 1 ピボット 2

チーム 2 ベース 1 ピボット 1 ピボット 2

チーム 3 ベース 1 ピボット 1 ピボット 2

異なるチームを生成するには、選択したすべてのベースとピボットが一意である必要があります!

4

0 に答える 0