Utilice Rand7 () para implementar Rand10 (
No utilice el método Math.random () del sistema.
Entrada: 1
Salida: [7]
Ejemplo 2:
Entrada: 2
Salida: [8,4]
Ejemplo 3:
rand7 ya está definido.
Parámetros entrantes: n representa el número de llamadas a rand10.
Código:
// The rand7() API is already defined for you.
// int rand7();
// @return a random integer in the range 1 to 7
class Solution {
public:
int rand10() {
int num = 50;
while(num>40){
num = (rand7()-1)*7+rand7();
if(num<=40) return num%10+1;
}
return 0;
};
//(randX()-1)*Y+randY() 可以实现[1,X*Y]范围内的等概率随机数
//randN()%X+1 N为X的整数倍可以实现[1,X]范围内的随机数
int *answer(int n){
int count = 0;
int data[n];
while(count<n){
data[count++] = rand10();
}
return data;
}
};