假設壞礦工的算力為4.3%,請問確認次數z幾次,可達雙重支付攻擊成功機率p< 0.0001
Hint:
#include <iostream> 
#include <cmath>
using namespace std;
double AttackerSuccessProbability(double q, int z)
{
double p = 1.0 - q;
double lambda = z * (q / p);
double sum = 1.0;
int i, k;
for (k = 0; k <= z; k++)
{
double poisson = exp(-lambda);
for (i = 1; i <= k; i++)
poisson *= lambda / i;
sum -= poisson * (1 - pow(q / p, z - k));
} 
return sum;
}
herrDeng網內搜尋
 
  
    自訂搜尋
  
Ads
訂閱:
張貼留言 (Atom)
熱門文章
- 
url="https://www.twse.com.tw/exchangeReport/STOCK_DAY?response=json&date=20220330&stockNo=2330"
- 
連續複利
- 
請用Random產生20個0~99的奇數(可重複),然後排序
- 
py3 cpp Line sweep解Leetcode 3346 Maximum Frequency of an Element After Performing Operations I 使用 line sweep不用排序,可得線性解 [Py3解請進]
- 
C++ Py3 計數排序與partial sum解Leetcode 2300 Successful Pairs of Spells and Potions Portions的極大值小於等於10萬是可進行記數排序的關鍵,既然可以採用記數排序,後面的二元搜尋也可以透過part...
- 
Py3 C++ C 2pointer速解Leetcode 11Container With Most Water [Py3 code請進]
- 
輸入公元n年,輸出"平年" "閏年"
- 
Py3 C++計數bitmask與2 pointers速解Leetcode2273 Find Resultant Array After Removing Anagrams 字串長度最長也只有10,四個bits一組,用bitmask解題 ----- The maximum le...
 
 
 
25 則留言:
z=5 p=1.35207e-005
1.35207e-005
--------------------------------
Process exited after 0.003546 seconds with return value 0
請按任意鍵繼續 . . .
總共要計算5次,才能算出機率。
Z=5次
P=1.35207e-5
Z=5 , P=1.35207e-5
Z=5次,P=35207e-5
Z=5 , p = 1.35207e-005
Z=5次
P=1.35207e-005
z=5,P=1.35207e-005
z= 5
P= 1.35207e-005
P=1.35207e-005
Z=5
P=1.35207-005
z = 5
p = 1.35207e-005
1.35207e-005
z=5
p=1.35207e-005
1.35207e-005
1.35207e-005
Z=5次
P=1.35207e-5
Z=5次
P=1.35207e-005
z = 5
p = 1.35207e-005
z = 5
p = 1.35207e-005
1.35207e-005
P=1.35207e-005
Z=5
P=1.35207e-005
Z=5
P=1.35207e-005
Z=5
Z=5
p = 1.35207e-005
張貼留言