[leetcode]470. Implement Rand10() Using Rand7()
Analysis
今天被微博上的孙艺兴bot笑死,哈哈哈哈哈—— [每天刷题并不难0.0]
Given a function rand7 which generates a uniform random integer in the range 1 to 7, write a function rand10 which generates a uniform random integer in the range 1 to 10.
利用rand7()生成一个randM() (此处M是10的整数)
Implement
// 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 = rand40();
return num%10+1;
}
private:
int rand49(){
int num = 7*(rand7()-1)+rand7()-1;
return num;
}
int rand40(){
int num = rand49();
while(num >= 40)
num = rand49();
return num;
}
};