gpt4 book ai didi

c++ - 生成一个没有重复数字的随机数?

转载 作者:搜寻专家 更新时间:2023-10-31 00:17:57 25 4
gpt4 key购买 nike

我想生成一个随机数,每个数字都在 0-9 范围内并且不重复。假设有限长度为 4。

  • 1234 符合条件,每个合数都是唯一的。
  • 1123没有,1重复

请问如何做到这一点?

最佳答案

生成数字:

std::vector<int> vec = {0,1,2,3,4,5,6,7,8,9}; // or initialize from array if not c++11
std::random_shuffle(vec.begin(), vec.end());
vec.resize(4);

并将数字连接成一个数字:

int number = 0;
for (auto i = vec.begin(); i != vec.end(); ++i) {
number = 10 * number + (*i);
}

关于c++ - 生成一个没有重复数字的随机数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12048175/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com