51nod 1718 Cos的多項式(規律)

2021-08-08 04:09:46 字數 1296 閱讀 3284

1718 cos的多項式

基準時間限制:1 秒 空間限制:131072 kb 分值: 40 

難度:4級演算法題

小明對三角函式充滿了興趣,有一天他突然發現乙個神奇的性質。

2cos(nx)似乎可以表示成2cos(x)的乙個多項式。

但是小明並不能證明它的正確性。

現在給定n,問是否可以表示成這樣的多項式,如果可以,只需輸出各項係數的和。(tip:如果這個和很大,那就高精度咯:))

否則輸出no

樣例解釋:2*cos(3x)=(2*cosx)^3-3*(2*cosx),係數為1和-3,他們的和為-2。

input

乙個數表示n(n<=1e15)
output

如果能表示 輸出各項係數和

不能 輸出no

input示例

3
output示例

-2

usedtobe

(題目提供者)

visual c++的執行時限為:1000 ms ,空間限制為:131072 kb 

示例及語言說明請按這裡

允許其他 ac 的使用者檢視此**,分享**才能檢視別人的**並有機會獲得勳章

令2*cos(nx)=a1*(2cos(x))^m1+a2*(2cos(x))^m2+......

一眼看過去感覺很難啊,難道求一波展開式?  仔細觀察等號右邊。為了省去繁瑣複雜的質數。我們通常怎麼做?

是不是把底數統統換成1,沒錯就是這樣。呢怎麼讓2*cos(x)=1呢。呢不就是x=π/3嘛

因此令x=π/3帶入求出所有2*cos(nx)的值,也就是係數之和的所有可能情況,因為是三角函式,所以是具有週期性的。

當然,這道題也可以打表找規律。

#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;          

#define ll long long

#define inf 1000000000

#define mod 1000000007

#define maxn 1008050

#define lowbit(x) (x&-x)

#define eps 1e-9

int main(void)

多項式 DP 省選模擬51nod抽卡大賽

的dp很容易能想到 定義d p i j k dp i j k dp i j k 表示第i個人選j時,有k個人比它小的概率 然後就能直接算期望了。不過這玩意顯然要t 發現,對於乙個已經固定的i,j,那麼剩下的所有人的所有情況本質上只有2種 比ai,ja ai,j 小,比ai,ja ai,j 大。那麼可...

51 nod 最高的獎勵

有n個任務,每個任務有乙個最晚結束時間以及乙個對應的獎勵。在結束時間之前完成該任務,就可以獲得對應的獎勵。完成每乙個任務所需的時間都是1個單位時間。有時候完成所有任務是不可能的,因為時間上可能會有衝突,這需要你來取捨。求能夠獲得的最高獎勵。input 第1行 乙個數n,表示任務的數量 2 n 500...

51Nod 1241 特殊的排序

題目傳送門 分析 之前想的是求lis,後面發現這組資料會出問題 3 1 2 4 5 6。其實這裡的lis還應當滿足前後兩個元素的值相差為1。比如上面的最長子串行為 3 4 5 6,而不是1 2 4 5 6。即只需移動1 2即可。即如果n個數最長連續上公升子串行 這裡的連續指數值上連續,即前後相差1 ...