作者wintercobra (wintercobra)
看板EE_DSnP
标题[问题] random number
时间Thu Nov 25 00:12:37 2010
randomNumGen感觉不太有乱数的感觉
应该是老师说的让输出一致才这样限定
既然如此,那要怎麽做出一个乱数?
是要...
1
用自己随便想的方法-->可能会跟老师测试时的乱数不同
2
用某特定方法??
会这样问是因为,我每次的乱数都一样,
指令像是mtd -r 2000 (乱数取2000个,删除object)这种东西
就永远都删到同一个object,这样根本就不能算是删除2000个嘛
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.180
1F:推 TommyKSHS:STL random_shuffle(arr,arr+n) 可以将 arr 的第 0 到 11/25 00:27
2F:→ TommyKSHS:n-1 个元素做随机的排列 11/25 00:28
3F:推 tomap41017:推楼上XD 11/25 00:38
4F:推 ric2k1:每次 random 要一样是因为 random seed 都放一样 (0), 11/25 06:08
5F:→ ric2k1:这样我们才好批改。想真的乱一点可以把 random seed 设成 11/25 06:09
6F:→ ric2k1:time or process ID 等等. 11/25 06:09
7F:推 timrau:如果"每次的乱数都一样"那会不会是使用方法错误...... 11/25 08:32
8F:推 ric2k1:原 PO 应该是说 "每次乱数的顺序都一样" 吧? 11/25 08:43
9F:推 johnathan717:他说「永远都删到同一个object」可能真的乱数都一样 11/25 13:07
10F:→ wintercobra:使用时,我是每random删一个object时,就去呼叫 11/25 20:13
11F:→ wintercobra:randomNumGen(),比方说想删20个,就用for回圈呼叫 11/25 20:14
12F:→ wintercobra:此函数20次,因为每次他回传的值都是一样的,於是 11/25 20:15
13F:→ wintercobra:每次都删到同一个object,结果就是只删得到一个 11/25 20:15
14F:→ wintercobra:这样感觉不太对呀 11/25 20:15
15F:推 ric2k1:为什麽是呼叫 randomNumGen()? 应该是利用 util.cpp 里头的 11/25 20:28
16F:→ ric2k1:rnGen 这个物件,然後呼叫它的 operator(range) 吧! 11/25 20:30
17F:→ wintercobra:是rnGen()没错啦,不过意思就是每次跑都会删到同一个 11/26 19:41
18F:→ wintercobra:後来自动解决了,谢谢! 11/26 19:49
19F:推 gooodgoodgod:所以意思是一定得用老师写的函式罗? 11/28 19:56
20F:→ gooodgoodgod:不可以用rand()%之类的吗?? 11/28 19:56
21F:推 TommyKSHS:嗯没错 spec 里面有说 11/28 20:01
22F:推 gooodgoodgod:谢谢楼上 11/28 22:02