leetcode-470. 用 Rand7() 实现 Rand10()
题目
代码
#include <iostream>
#include <vector>
using namespace std;
int rand10() {
/* double tn = (double)rand7() / 7;
tn = tn * 9 + 1;
return (int)tn;*/
// return (rand7() + rand7() + rand7() + rand7() + rand7() + rand7() + rand7() + rand7() + rand7() + rand7()) % 10 +1;
int row, col, idx;
do{
col = rand7();
row = rand7();
idx = col + (row - 1) * 7;
}while(idx > 40);
return 1 + (idx - 1) % 10;
}
int main(){
int res;
res = rand10();
cout<<res;
return 0;
}