BZOJ 1011 遙遠的行星 誤差分析

2021-07-26 05:41:03 字數 941 閱讀 2810

description

直線上n顆行星,x=i處有行星i,行星j受到行星i的作用力,當且僅當i<=aj.此時j受到作用力的大小為 fi->j=

mi*mj/(j-i) 其中a為很小的常量,故直觀上說每顆行星都只受到距離遙遠的行星的作用。請計算每顆行星的受力

,只要結果的相對誤差不超過5%即可.

input

第一行兩個整數n和a. 1<=n<=10^5.0.01< a < =0.35,接下來n行輸入n個行星的質量mi,保證0<=mi<=10^7

output

n行,依次輸出各行星的受力情況

sample input

5 0.3

4 sample output

0.000000

0.000000

0.000000

1.968750

2.976000

hint

精確結果應該為0 0 0 2 3,但樣例輸出的結果誤差不超過5%,也算對

這是個什麼神題啊。。。結果不超過5%什麼鬼啊。。。

解題方法:

簡直是神得一毛啊。。不過這裡的複雜度是o(n*t)的,t窩取的500

**如下:

#include 

using

namespace

std;

const

int n = 1e5+10;

double m[n], sum[n];

int main()

}else

printf("%f\n", ans);

sum[j] = sum[j-1] + m[j];

}return

0;}

bzoj1011 HNOI2008 遙遠的行星

bzoj1011 hnoi2008 遙遠的行星 emmm玄學誤差題 之前有做過一道min hash的trick題,有空整理一下 坑 a的上限0.35 f i sum frac 暴力複雜的 n 0.35n 過不掉對於乙個i來說若可以 o1 求出 sum frac i a 的近似值 就可利用m的字首和o...

BZOJ1011 HNOI2008 遙遠的行星

bzoj1011 hnoi2008 遙遠的行星 直線上n顆行星,x i處有行星i,行星j受到行星i的作用力,當且僅當i aj.此時j受到作用力的大小為 fi j mi mj j i 其中a為很小的常量,故直觀上說每顆行星都只受到距離遙遠的行星的作用。請計算每顆行星的受力 只要結果的相對誤差不超過5 ...

BZOJ 1011 HNOI2008 遙遠的行星

time limit 10 sec memory limit 162 mbsec special judge submit 2559 solved 923 submit status discuss 直線上n顆行星,x i處有行星i,行星j受到行星i的作用力,當且僅當i aj.此時j受到作用力的大小...