太平洋賽題解

2022-02-04 01:52:49 字數 1151 閱讀 7728

看到fi=a*f_+b*f_+c*ci2很容易想到矩陣快速冪:

這個也可以直接求出通項,不過可能會出現開根。

**:

#include #include 

const

long

long mod=19260817

;long

long

aa,b,c,js1,js2,n;

struct

jz

if(s==1

)

if(s==2

) }

friend jz

operator *(jz a,jz b)

return

c; }

};void

cl()

printf(

"%d\n

",an.a[0][0

]); }

}int main()

首先我們要先看一下這些數字有什麼性質(p^0,p^1,p^2...)

很容易發現他們%(p+1)只能得到1和p,證明:

p^0%(p+1)=1

p^1%(p+1)=p

p^2%(p+1)=(p+1-1)^2%(p+1)=1

p^(奇數)%(p+1)=(p^2)^n*p^1=p

p^(偶數)%(p+1)=(p^2)^n=1

可以把p看成-1。

於是我們這樣考慮,假設n<=p,等於p的話先手就一定獲勝(直接拿p個走人)n如果n>p,如果n%(p+1)的結果為先手贏,於是先手就會先"搞一局",然後無論後手怎麼拿,這要他湊一下mod(p+1)為0就行了(mod只有p和1,能配成),於是先手勝

如果n%(p+1)為後手勝的情況,後手只要配p+1的整數倍最後把先手搞一下就行了

然後由於n比較大,邊讀邊取模就行了

**:

#include void

cl()

if(ha==p-1||ha%2) printf("

lsx\n");

else printf("

gjk\n");

}}int main()

飛躍太平洋 9 12

飛躍太平洋 9 12 旅行總是艱辛的,特別是長途旅行,況且當重點是行而不是旅的時候。去延安坐過十幾個小時的汽車,去北京坐過十幾個小時的火車,到達目的地後的喜悅可以沖淡旅途的疲勞。但這次我不曉得在經濟艙內坐十幾個小時的感覺會怎樣 期望越大失望越大,所以生活中有時悲觀點也不無益處。當你揣著受苦受難的準備...

leetcode 題目417 太平洋大西洋水流問題

2020 3 27 打卡 給定乙個 m x n 的非負整數矩陣來表示一片大陸上各個單元格的高度。太平洋 處於大陸的左邊界和上邊界,而 大西洋 處於大陸的右邊界和下邊界。規定水流只能按照上 下 左 右四個方向流動,且只能從高到低或者在同等高度上流動。請找出那些水流既可以流動到 太平洋 又能流動到 大西...

417太平洋大西洋水流問題

採用逆向思維,從陣列的最外邊開始遍歷,向陣列中心開始遍歷,如果太平洋和大西洋都被訪問過,那麼當前節點就就符合題目條件。class solution,bool iseffective int x,int y void dfs int x,int y,int pre,vector bool shuzu,...