假設壞礦工的算力為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)
熱門文章
-
教育部為提昇全民資安素養與電腦防護能力,本部於101年9月5日至11月5日舉辦「全民資安素養自我評量」活動,請在活動期間內踴躍上網檢測資訊安全素養認知程度,並有機會參與抽獎,詳情請參閱活動網站(網址: https://isafe.moe.edu.tw/event
-
C C++ GCD LCM解Leetcode難題2197 Replace Non Coprime Numbers in Array 用binary Euclidean algorithm定義gcd,然後定義lcm之後就是用stack [Py3 code請進]
-
C++ Pascal三角與模10算術解Leetcode 2221 Find Triangular Sum of an Array 如果採用有支援非常長int的程式語言,mod 10算術就整個省略,就用Pascal三角的性質,可得快速解
-
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請進]
-
C++示範bitset取代hashset解Leetcode 1733 Minimum Number of People to Teach C++ STL的unordered_set與bitset都能解這題,但執行效率差很多,有誰寫C++其執行效能要比類似的Python cod...
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
張貼留言