NOIP2014 解方程 數論 模擬

2021-08-25 12:01:47 字數 1193 閱讀 6210

題目大意:求乙個多項式方程在[1,

m]

[1, m]

[1,m

]的整數解。

題解:沒想到吧,這題竟然是暴力(溜

好吧也沒有那麼簡單

要用到乙個演算法:秦九韶演算法,就是減少多項式的計算次數

然後暴力列舉[1,

m]

[1, m]

[1,m

]就行了 ?

不行,由於係數太大,我們還要取模。將原數分別模多個質數,如果答案都為0是就可以近似認為是答案了。這樣的話在洛谷上可以ac,不過在bzoj上會tle。為什麼?因為洛谷資料水+評測機快,導致很多人沒有進一步去想。

真·滿分做法:注意到在模p意義下若f(x

)=

0f(x) = 0

f(x)=0

,則f (x

+k∗p

)=

0f(x + k * p) = 0

f(x+k∗

p)=0

,所以只用列舉到質數範圍就行了。

#include

#include

const

int mod[3]

=;const

int maxmod =3;

int n, m;

char ch[

20001];

long

long a[5]

[105];

int mod[5]

[40001];

int ans[

1000001];

inline

void

read

(int i)

while

(ch >=

'0'&& ch <=

'9')

if(f ==-1

)for

(int t =

0; t < maxmod; t++

) a[t]

[i]= mod[t]

- a[t]

[i];

}inline

boolpd(

int x,

int t)

inline

bool

check

(int x)

intmain()

NOIP2014 解方程 題解

題目傳送門 題目描述 已知多項式方程 a 0 a1 x a2 x2 an xn 0 a0 a1 x a2 x 2 dots an x n 0 a0 a1 x a2 x2 an xn 0求這個方程在 1,m 1,m 1,m 內的整數解 n nn 和 m mm 均為正整數 輸入格式 輸入共 n 2 n ...

NOIP2014 解方程 題解

題目傳送門 題目描述 已知多項式方程 a0 a1 x a2 x 2 dots an x n 0 求這個方程在 1,m 內的整數解 n 和 m 均為正整數 輸入格式 輸入共 n 2 行。第一行包含 2 個整數 n,m 每兩個整數之間用乙個空格隔開。接下來的 n 1n 1 行每行包含乙個整數,依次為 a...

NOIP2014 解方程 數學)

本題重點考察數學知識,可分成以下三點 秦九韶演算法 取模運算律,long long等資料型別的細節。秦九韶演算法 假設有一元4次方程a0 a1 x a2 x2 a3x3 a4x4 0,那麼其等於 x x xa4 a3 a2 a1 a0 0。在此題中同理,最後算出答案判斷是否為0。取模運算律 資料型別...