chnjxyuezhe 发表于 2012-3-18 14:06:00

25*25单色地图问题。。。

在25*25的单色地图上,比如绿色,用《竞赛题目及相关说明-3月10日更新.doc》里的示例程序进行游戏,为什么建筑都被放在了从左上角到右下角的对角线上了?难道是伪随机数的问题?

Iver 发表于 2012-3-19 10:04:00

回复 1# chnjxyuezhe 的帖子

你好,chnjxyuezhe:
看起来是的:)
Radom.Next有几个重载的方法,可以尝试使用不同的重载来避免这个喜感的效果:smoke
当然,老生常谈地再补充一句,那个示例算法是演示接口使用的,仅供参考:-o

Iver 发表于 2012-3-19 14:43:00

回复 1# chnjxyuezhe 的帖子

你好,chnjxyuezhe:
好吧,我得承认,我说错话了:Z 这个问题的答案,的确只是看上去如此。
造成所有建筑都被摆放在主对角线上的原因,不是Random.Next生成的随机数的问题,而是因为以下两行:
    int x = randNum % map.Width;
    int y = randNum % map.Height;
注意到了么?如果地图的宽和高是相等的,那么,这个算法只会尝试将建筑的左上角摆放在主对角线上:)

chnjxyuezhe 发表于 2012-3-21 21:18:00

哦,是。。。
页: [1]
查看完整版本: 25*25单色地图问题。。。