已知random7求random10
頭條一面 ,其實之前是看過的,宇宙條問的太太太難了QAQ
這樣想
random7()返回的1,2,3,4,5,6,7
經過加減乘除這類的運算至少應該是擴充到比10大的資料範圍,才能進行取模運算
那麼應該想到7*(random7()-1)+random7() 可以擴充到1-49而且是等概率的
比49小的最大的能被10整除的是40,那麼大於40的就捨棄
int random7(){ return rand()%7+1; } int random10(){ int x=49; while(x>40){ x=random7()*(random7()-1)+random7(); } return x%10+1; }
擴充套件一下 如果是求random9呢
一樣的哦,大於45的就捨棄了唄
int random9(){
int x= 49;
while(x>45){
x=random7()*(random7()-1)+random7();
}
return x%9+1;
}
相關推薦
已知random7求random10
頭條一面 ,其實之前是看過的,宇宙條問的太太太難了QAQ 這樣想 random7()返回的1,2,3,4,5,6,7 經過加減乘除這類的運算至少應該是擴充到比10大的資料範圍,才能進行取模運算
Codeforce 459A - Pashmak and Garden (已知兩點求另外兩點構成正方形)
like tty cos mod ner pro tin content ini Pashmak has fallen in love with an attractive girl called Parmida since one year ago... To
codeforces 1058 D. Vasya and Triangle(已知面積求整數點座標,規律,利用__gcd把一個數拆成有範圍限制的兩個數相乘)
題意:給出橫座標最大值n,縱座標最大值m,再給出一個k要求,輸出三個整數點座標構成的三角形的面積為m*n/k 思路: (ps:利用__gcd把一個數拆成有範圍限制的兩個數相乘,不是對這個數的質因數貪心得去乘,湊那兩個範圍(這樣不行的) ) 令x1=y1=0 ,顯然
已知座標求多邊形面積
思路 已知三角形座標求面積 #include<stdio.h> int main() { double a,b,c,d,e,f,s; while( scanf("%lf%lf%lf%lf%lf%lf",&a,&b,&a
已知座標求角度
已知javascript canvas 的一個點二維座標(x, y),由點(0,0)到點(x, y) 記為向量 a, 求向量 a 與 x 軸的夾角。 直接用反正切函式,或者反餘弦函式來做比較方便, 注意這兩個反三角函式的值域與定義域,一般來說用反餘弦函式來做
POJ2255-已知二叉樹前序中序求後序
nbsp def 二叉樹 水題 輸出 ostream -i sin root 水題……也可以不建立二叉樹來做 如果pre[pl:pr]對應in[il:ir],那麽pre[pl]是這棵樹的根,它在in的位置記為root,顯然root在[il,ir]內 那麽二叉樹的左子樹是in
HDU 1710Binary Tree Traversals(已知前序中序,求後序的二叉樹遍歷)
pid http pan clu names pty efi images 樹遍歷 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1710 解題思路:可以由先序和中序的性質得到 : 先序的第一個借點肯定是當前子樹的根結點, 那
已知兩點的經度和緯度,求兩點間的距離(php,javascript)
turn lan span cti href script 返回 ng2 pan php代碼:轉載 http://www.cnblogs.com/caichenghui/p/5977431.html 1 /** 2 * 求兩個已知經緯度之間的距離,單位為米
Scala實現:已知三點坐標,求最短距離(如果在垂足不在線段內,最短距離為到其中一點的直線距離)
線段 在線 obj creat sqrt reat 最短距離 最小 space /** * 已知三點坐標,求其中一點到另兩點的垂線距離 * (如果在垂足不在線段內,最短距離為到其中一點的直線距離) * Created by wzq on 17-11-2. */obj
求數列的的增幅,已知起始列和結束列,中間階梯數
圖片 分享圖片 公式 結束 com bubuko http nbsp 技術分享 求數列的的增幅,已知起始列和結束列,中間階梯數 已知 n1=2 n2=100 階梯=4 上面4個空列 每列增幅多少,正好填到100? 公式 (n2-n1)/(階梯+1) 為什
【模板】求星期(已知年月日)
color 模板 div lse urn -- return pan bsp int getweek(int y,int m,int d) { int x; if(m==1||m==2) m+=12,y--; if(y<175
已知一點經緯度和距離,方位角;求另外一點的經緯度
經緯度 經緯 ant cat cse rpo pass quest red It seems you are measuring distance (R) in meters, and bearing (theta) counterclockwise from due e
已知兩個連結串列A和B分別表示兩個集合,其元素遞增排列。請設計演算法求出兩個集合A和B的差集(即僅由在A中出現而不在B中出現的元素所構成的集合),並以同樣的形式儲存,同時返回該集合的元素個數。
語言:C++ #include <iostream> using namespace std; typedef struct LNode { int data; LNode *next; }LNode,*LinkList; //建立連結串列 int CreateList(Li
已知兩個連結串列A和B分別表示兩個集合,其元素遞增排列。請設計一個演算法,用於求出A與B的交集,並存放在A連結串列中。
語言:C++ #include <iostream> using namespace std; typedef struct LNode { int data; LNode *next; }LNode,*LinkList; //建立連結串列 int CreateList(Li
求一個已知二維陣列的最大子陣列和(司宇,廖強)
小組成員:司宇,廖強 設計流程: 設計介面: 程式設計:1.封裝一個求二維整陣列最大子陣列和的子程式;  
資料結構——已知先序中序求後序,已知中序後序求先序
總結下二叉樹的已知兩種遍歷方式求第三種遍歷順序的方法,已知先序和中序遍歷或者後序與中序遍歷後二叉樹是唯一確定的,下面介紹怎麼求出第三種遍歷順序。 先序遍歷順序為:根結點——左子結點——右子結點,中序遍歷為:左子結點——根結點——右子結點,我們注意到,先序遍歷的第一個元素就是二叉樹根結點,我們在中序遍
已知兩點距離和其中一點經緯度,求另外一點經緯度
所提供的程式碼有些問題:但下面還有其他方法的連結: https://stackoverflow.com/questions/7222382/get-lat-long-given-current-point-distance-and-bearing 已知兩點經緯度,求兩點間距離
【筆記】已知圓上兩點座標和半徑,求圓心
參考了一下這個博主的部落格:https://blog.csdn.net/liumoude6/article/details/78114255?locationNum=2&fps=1 已知兩點座標(x1, y1), (x2, y2)和半徑R,求圓心座標(x0, y0)。 程式設計
golang實現已知三角形三點坐標,求三角形面積
長度 truct bsp class nbsp angle triangle ret cto 代碼如下: func GetTriangleAreaByVector(x vector.Vector3,y vector.Vector3,z vector.Vector3) fl
郝斌資料結構入門--P70-樹 已知兩種遍歷序列求原始二叉樹
郝斌資料結構入門--P70-樹 已知兩種遍歷序列求原始二叉樹 已知先序、中序、後序任何一種序列,不能夠找到原始二叉樹。 經過研究發現,已知一棵樹的兩種序列,可以把二叉樹求出來。 也經過研究發現,已知先序和後序,無法還原出原始的二叉樹。 最終表明,通過 先