头文件<bits/stdc++.h>
rand()随机不大于32767的数
随机[l,r]的代码如下
int randi(int l,int r){
long long x=rand();
while(x<(r-l+1))x*=rand();//乘到>=r-l+1
return x%(r-l+1)+l;//随机
}
随机len位纯小数
double randd(int len){return 1.*randi(0,pow(10,len))/pow(10,len);}
解释:
eg.len=3
那这个数就可以理解为
原数=0.001*[0,999]随机数
=
那[l,r)的len位带小数呢?
double randid(int l,int r,int len){return randi(l,r)+randd(len);}
这个一加就ok!
通用的这些,再说点其他的
rand()字母(A~Z)
char randA(){return randi(0,25)+'A';}
rand字母(a~z)
char randa(){return randi(0,25)+'a';}
rand字母(A~Z or a~z)
char randAa(){return (randi(0,1)?randa():randA());}