生成不重复的随机数对(C/C++)
1 #include <stdio.h>
#include <algorithm>
#include <stdlib.h>
#include <time.h>
using namespace std;
const int max_rand = ;
int a[max_rand], b[max_rand];
struct node
{
int x, y;
bool operator < (const node q) const
{
if(x == q.x)
return y < q.y;
return x < q.x;
}
}RAND[]; int main()
{
for (int i = ; i < max_rand; i ++)
a[i] = b[i] = i;
b[] = -;
int aa = , bb = ;
// time_t t;
// srand((unsigned) time(&t));
srand((unsigned)time(NULL));// let the seed accroding to time
for (int i = ; i < ; i ++)
{
int x = rand()%; //make x between 0 and 2000(include)
int y = rand()%; //same up;
/* double text = (double)rand()/RAND_MAX*(bb-aa) +aa; //produce double text between aa and bb
printf ("%f\n", text);
getchar();
*/
if((!x || !y)||(!a[x] && b[y] == -))
{
i --;
continue;
}
RAND[i] = (node){x, y}; a[x] = ;
b[y] = -;
}
sort(RAND, RAND +);
for (int i = ; i < ; i ++)
{
printf("%d %d\n", RAND[i].x, RAND[i].y);
// getchar();
}
return ;
}
生成不重复的随机数对(C/C++)的更多相关文章
- [转载][记录]javascript生成不重复的随机数
参考链接:javascript生成不重复的随机数 项目播放视频,是无序的,有上下两个按钮,所以需要生成1,8不重复的随机数数组,如: ,,,,,,, 然后再split一次,就是数组了. 拿来主义了
- C#生成不重复的随机数(转)
我们在做能自动生成试卷的考试系统时,常常需要随机生成一组不重复随机数的题目,在.net Framework中提供了一个专门用来产生随机数的类System.Random. 对于随机数,大家都知道,计算机 ...
- C#生成不重复的随机数
在做能自动生成试卷的考试系统时,常常需要随机生成一组不重复的题目,在.net Framework中提供了一个专门用来产生随机数 http://www.jbxue.com/tags/suijishu.h ...
- C#生成无重复的随机数
大一学期末的时候做课程设计时遇到过生成无重复随机数的问题,今天自己也写出来了: static int[] Create_Value() { Random ran = new Random(); //生 ...
- 用C#生成不重复的随机数
我们在做能自动生成试卷的考试系统时,常常需要随机生成一组不重复的题目,在.net Framework中提供了一个专门用来产生随机数的类System.Random. 对于随机数,大家都知道,计算机不 可 ...
- C# 使用Guid类生成不重复的随机数
什么是Guid GUID(全局唯一标识符) 全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID ...
- Java生成不重复的随机数
public class test { public static int[] Randoms(int number) { Random rand = new Random(); //创建一个新随机数 ...
- VBS在指定范围内生成不重复的随机数
Dim Z()ReDim Z(15)For i=0 To UBound(Z) Z(i)=GetRndNum(i-1,UBound(Z)) WScript.Echo Z(i)Next Fun ...
- java 生成不重复的随机数
import java.text.SimpleDateFormat;import java.util.Date; public class Test2 { public static void mai ...
随机推荐
- Linux学习02--Linux一切皆文件
Linux学习第二部 Linux一切皆对象 啊啊啊啊啊,今天被学妹说太直了,嘤嘤嘤. 学习linux两三天了,前期感觉并不难,只是命令多,多记记多敲一敲就能都记住了.希望自己能够坚持下去吧! 下面是根 ...
- 紫书 习题 11-15 UVa 1668 (图论构造法)
参考了http://www.bubuko.com/infodetail-1276416.html 首先是逆向思维, 向把每条边看作一条路径, 然后再去合并 然后我们讨论怎么样合并时最优的 我们讨论当前 ...
- ajax异步刷新
前台js <script type="text/javascript"> function getLands() { $.ajax({ url:"httpse ...
- cocos2d-x-3.2 怎样创建新project
1.在cocos2d-x-3.2\执行python命令 python setup.py //它的作用是将以下这些路径加入到你的用户环境变量中,当然你也能够不加入 COCOS_CONSOLE_ROOT ...
- NSURLConnection和NSRunLoop
主线程中创建一个NSURLConnection并异步运行 [self performSelectorOnMainThread:@selector(start) withObject:nil waitU ...
- zzulioj--1778-- 和尚特烦恼4——有多少战斗力(gcd)
1778: 和尚特烦恼4--有多少战斗力 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 259 Solved: 123 SubmitStatusWe ...
- git的学习笔记整理
Git学习较好的网址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373 ...
- ThinkPhp5-PHPExcel导出数据
PHP-Excel 标签(空格分隔): php 类库下载地址:https://codeload.github.com/PHPOffice/PHPExcel/zip/1.8 php导出excel表格数据 ...
- JavaScript中函数作为另一个函数的参数的时候它存在于哪个作用域
一直对函数作为参数被传递进另外一个函数理解的不是很清除.先看下这段代码吧: function test(fn){ var bar = 1; fn(); } var bar = 99; test(fun ...
- Ajax的几种形式 和使用情况
Ajax的几种形式: 1 $.get( "Login.ashx", {Name:name,Pwd:pwd,action:x}, function(data){这里用da ...