重聚 牛頓迭代

2021-07-31 11:45:03 字數 683 閱讀 1700

給出n和p,求最小的正整數x使得x!>p^q

有斯特林公式n!≈√(2πn)·(n/e)^n

取個log得log(n!)≈0.5*log(2*pi)+(n+0.5)*log(n)-n

然後log(p^q)=q*log(p)

不過二分是過不去的

這個函式可以牛頓迭代,就是對於乙個x,在函式上做切線,與x軸的交點作為下一次的x

複雜度是loglogn

eps開到1e-5才能過,低了會wa,高了會tle

#include

#include

using

namespace

std;

typedef

long

long ll;

int t,p,q,b,c,d,e,f,g;

const

int mob=1004535809;

const

double pi=acos(-1);

const

double __ln_2pi=0.5*log(2*pi);

int main()

(ans*=(ll)ceil(x))%=mob;

p=(ll(p)*b+c)%d+1,q=(ll(q)*e+f)%g+1;

}cout

0;}

牛頓迭代 牛頓下山

2009 11 18 16 59 51 分類 計算方法數學類 字型大小 訂閱 牛頓迭代法,牛頓下山迭代 include include float newtonfun float x0,float c float xiashanfun float x0,float c float fun1 floa...

牛頓法和牛頓迭代法

牛頓法,大致的思想是用泰勒公式的前幾項來代替原來的函式,然後對函式進行求解和優化。牛頓法和應用於最優化的牛頓法稍微有些差別。牛頓法用來迭代的求解乙個方程的解,原理如下 對於乙個函式f x 它的泰勒級數展開式是這樣的 f x f x 0 f x 0 x x 0 frac f x 0 x x 0 2 f...

牛頓迭代法

創新工廠的筆試題 不用庫函式sqrt 求乙個整型數n的開方,要求精度達到0.001即可。在這裡首先介紹一下牛頓迭代法 假設乙個方程為 f x 0 那麼假設其解為x0,則用泰勒級數展開之後可得 f x f x0 f x0 x x0 0 其中x為其近似解。根據上式推導出 x x0 f x0 f x0 這...