关于随机函数

学术版

`inline`跟随机数没关系,是指这个函数直接运行代码,而不是通过栈调用。当然,递归函数不能这么做。
by dblark @ 2018-07-07 19:08:54


@[dblark](/space/show?uid=40241) 还有那个``` static ```呢,那是干吗用的
by SkyLiYu @ 2018-07-07 19:10:34


@[dblark](/space/show?uid=40241) 我是不是一定要和他一样写那么多运算,还是随便写
by SkyLiYu @ 2018-07-07 19:11:13


不用 其实精髓是 ```cpp seed = (int)((((seed ^ 998244353) + 19260817ll) * 19890604ll) % 1000000007 ``` 这一段 另:我是P党,所以不知道`static`干啥。
by dblark @ 2018-07-07 19:15:09


@[dblark](/space/show?uid=40241) 这一段我必须一模一样地写?
by SkyLiYu @ 2018-07-07 19:17:02


你可以认为static是一种只在函数内作用的全局变量。
by scallop @ 2018-07-07 19:17:29


@[scallop](/space/show?uid=25739) ``` seed = (int)((((seed ^ 998244353) + 19260817ll) * 19890604ll) % 1000000007); ``` 请问大佬这一段非得这么写不可么?
by SkyLiYu @ 2018-07-07 19:20:24


这不是真正的随机数,只是通过复杂的计算来模拟,计算的结果是固定且有一定规律的。那个static是静态全局变量。
by Haze @ 2018-07-07 19:20:46


@[Haze](/space/show?uid=110463) 那随机数是怎么写,难不成这么写不行, 复杂的计算?是不是我只要写个随随便便的计算就可以
by SkyLiYu @ 2018-07-07 19:22:55


如果要写真随机数可以用time(也就是时间)作为种子,再经过复杂的计算(自己编,能多复杂就多复杂)。头文件是#include <time.h>
by Haze @ 2018-07-07 19:23:12


| 下一页