牛客網子段乘積

2021-10-02 18:24:44 字數 654 閱讀 1363

新增鏈結描述

#include

using

namespace std;

typedef

long

long ll;

const

int mod=

998244353

;ll quick

(ll a,ll b)

//快速冪 快速冪的迭**法

return ret;

}/*(1)初始令ans = 1,用來存放累積的結果。

(2)判斷b的二進位制末尾是否為1 ,(及判斷 b&1 是否為 1),也可以理解為判斷b 是否為奇數。如果是的話,令ans乘上a的值。

(3)令a平方,並使b右移一位,(也可以理解為,b/2)

(4)只要b 大於0,就返回(2)。

*/ll inv

(ll a)

typedef vector<

int> vi;

intmain()

if(i>=k-1&&

!zero)

//zero==0,滿足條件

ans=

max(ans,cur);}

cout<'\n'

;return0;

}

希望對大家有幫助,嘻嘻!

牛客網 子串

解題思路 模擬出每乙個進製形成的字串然後kmp就可以了!好像用string直接find也行 include include include include include includeusing namespace std const int maxn 1000005 char t maxn ch...

牛客網 子串計算

題目描述 給出乙個01字串 長度不超過100 求其每乙個子串出現的次數。輸入描述 輸入包含多行,每行乙個字串。輸出描述 對每個字串,輸出它所有出現次數在1次以上的子串和這個子串出現的次數,輸出按字典序排序。樣例輸入 10101 樣例輸出 0 2 01 2 1 3 10 2 101 2 思路分析 in...

《牛客競賽 子段乘積》的題解

給出乙個長度為 n 的數列 a1,a2,an 求其長度為 k 的連續子段的乘積對 998244353 取模餘數的最大值。第一行兩個整數n,k。第二行n個整數,a1,a2,an 輸出乙個整數,代表最大餘數。531 230861 k n 2 1e5 0 ai 998244353 這一次解題我們需要用到逆...