0

3rows*6cols の配列を形成できる 3*6 桁を生成したいと思います。しかし、どの列にも重複が見つかることは望ましくありません。同じ行のどこにでも配置できますが、各列に同じ番号の重複があってはなりません。それを生成するアルゴリズムはありますか?

4

1 に答える 1

1

行列を列ごとに入力し、Set を使用して、現在の列で既に使用した数値を追跡します。疑似コードで、各セルに do-while ステートメントを使用できます。

for each column {
  used = new set
  for each cell in column {
    do {
      num = generate random number
    } while (num already in used)
    add num to used
    add num to the current cell
  }
}
于 2013-07-24T07:43:53.923 に答える