ええと... BIGFLOAT http://www.fractal- Landscapes.co.uk/bigint.html、
0.4 ^(1000 または 100000000) のようなものを計算する必要があるのは、非常に長い時間がかかる問題です。並列プログラミングや分散プログラミングについてはまだ勉強していませんが、高速でわかりやすい解決策が必要です。この企画をあと6時間で配信!! :D
コードは次のとおりです。
private BigFloat getBlocking(double k)
{
double p1, p2;
BigFloat p3;
p3 = new BigFloat(pp);
p1 = this.P / (double)(k / (double)this.N);
p2 = Math.Pow((1 - p1), 2);
p3= new BigFloat(1-p2,pp);
p3.Pow((int)k);
return p3;
}
ここで、K は 1000 、N は 1001 です