取1-100的随机数,在最短时间内取到所有的数,需要怎么做?
如题!1-100的随机数,在最短时间内取到所有的数,需要怎么做? C?随机数?控制
[解决办法]
所有的数: 指的是哪些数?
如果是指1-100:那么创建一个数组int ns[] = {1, 2, ...., 100}; 省略处自己补
然后打乱这个数组
const int count = 200; // 随便一个数,但不要太小,如10, 15之类的,大一点会比较好。
const int length = 100; // 数组元素的个数
for (int i = 0; i < count; ++i) {
int index = (int) (rand() * length); // 得到 [0, length-1]
int temp = ns[index];
ns[index] = ns[length - index - 1];
ns[length - index - 1] = temp;
}