#1547. C++-随机数-srand写在【循环内】并在选一内进行rand,导致产生的随机数【一样】

C++-随机数-srand写在【循环内】并在选一内进行rand,导致产生的随机数【一样】

No testdata at current.

Background

Description

C++-随机数-srand写在【循环内】并在选一内进行rand,导致产生的随机数【一样】

image

【srand写在循环内,导致产生的随机数一样】的原因: 1、srand()函数是初始化随机数产生器,它产生随机数种子,说白了就是初始化随机数。 srand((unsigned)time(NULL));取的是系统时间,也就是距离1970.1.1午夜有多少秒。 而for循环每循环一次时间远远小于1秒,这就导致了srand((unsigned)time(NULL))产生的种子并没有改变。 那么,相同的随机数种子所产生的随机数肯定是一样的了。 2、在循环中srand产生的随机数种子是一样,那为什么rand产生的随机数会是一样,这是产生相同的随机数种子后,运行rand函数,其产生的随机数组成的序列是一样的。

Format

Input

Output

Samples



Limitation

1s, 1024KiB for each test case.