0
1から100までの整数のセットをランダムに生成したいと思います。 Matlabで最小間隔のランダムな整数を生成する
2,4,5,7
次のセットが4間の間隔ためないながら整数をソートした後、それぞれの整数の間の最小間隔は2未満、例えば
2,4,8,10
満たす必要であってはなりません5が2未満です。 これを達成する方法はありますか?ありがとう!
1から100までの整数のセットをランダムに生成したいと思います。 Matlabで最小間隔のランダムな整数を生成する
2,4,5,7
次のセットが4間の間隔ためないながら整数をソートした後、それぞれの整数の間の最小間隔は2未満、例えば
2,4,8,10
満たす必要であってはなりません5が2未満です。 これを達成する方法はありますか?ありがとう!
N = 10; % number of integers required
delta = 2; % minimum difference required
a = randperm(100);
idx = 1;
b = a(idx);
while(length(b) < N && idx < length(a))
idx = idx+1;
c = abs(b - a(idx));
if any(c < delta)
continue;
end
b = [b; a(idx)];
end
b
何を試しましたか?どのくらいの大きさがあなたのそれぞれのセットを必要としますか? –