題解 2020牛客寒假演算法基礎集訓營4

2021-10-02 18:57:50 字數 3261 閱讀 1333

其他比賽題解:

【題解】2020牛客寒假演算法基礎集訓營1

【題解】2020牛客寒假演算法基礎集訓營2

【題解】2020牛客寒假演算法基礎集訓營3

【題解】2020牛客寒假演算法基礎集訓營5

code:

#include

using namespace std;

typedef

long

long ll;

ll f1[

100]

,f2[

100]

,ans[

100]

;int

main()

return0;

}

code:

#include

#include

using namespace std;

intmain()

}if(str[i]

=='['

) s.

push

(str[i]);

if(str[i]

==']'

)else}if

(str[i]

==''

)else}}

if(s.

empty()

) cout<<

"yes"

cout<<

"no"

}

尺取法:l 代表左端點,r 代表右端點。l 先不動,r 往前掃瞄,如果成功掃到,有 k 個非0元素的子段就累乘起來,最後把最左端的元素除了(用乘法逆元,否則會出現除以 0 的異常),左端點往前移動,l++,再繼續掃瞄。在未達到 k 個非零元素的子段前,如果遇到 0,當前的區間重置 ,左端點直接到 0 的下乙個位置繼續掃瞄。

線段樹:線段樹裸題,只用到查詢,還不用更新。

code1:

//尺取法 + 乘法逆元

#include

using namespace std;

typedef

long

long ll;

const

int n=

2e5+

100;

const ll mod=

998244353

;int n,k;

ll a[n]

;ll q_pow

(ll a,ll b)

return ans%mod;

}ll inv

(ll a,ll mod)

intmain()

}else

r++;}

cout

}

code2:

//線段樹

#include

using namespace std;

typedef

long

long ll;

const

int n=

2e5+

100;

const ll mod =

998244353

;ll a[n]

;struct nodetree[n<<2]

;void

build_tree

(int node,

int l,

int r)

int mid=

(l+r)

>>1;

build_tree

(node<<

1,l,mid)

;build_tree

(node<<1|

1,mid+

1,r)

; tree[node]

.v=tree[node<<1]

.v*tree[node<<1|

1].v%mod;

}ll query

(int node,

int l,

int r)

intmain()

code:

#include

#include

using namespace std;

typedef

long

long ll;

const

int n=

2e5+

100;

ll a[n]

;map mp;

intmain()

cout

}

code:

#include

using namespace std;

const

int n=

5e5+

100;

int n[n]

,s[n]

,sum[n]

;int

main()

int p1=

0,p2=0;

for(

int i=

9;i>=

1;i--)}

for(

int i=

0;i<=p1+

100;i++

)int vis=0;

for(

int i=p1+

100;i>=

0;i--)}

cout

}

code:

#include

using namespace std;

typedef

long

long ll;

const

int n=

1e6+

100;

ll depth[n]

,cnt[5]

;int

main()

cout<*(cnt[0]

-1)+cnt[1]

*(cnt[1]

-1)

}

2020牛客寒假演算法基礎集訓營1 題解

目錄 a honoka和格點三角形 b kotori和bangdream c umi和弓道 d hanayo和公尺飯 e rin和快速迭代 f maki和tree g eli和字串 h nozomi和字串 i nico和niconiconi j u s的影響力 嘔,花我時間最多的一道題,因為一開始推...

2020牛客寒假演算法基礎集訓營

長期更新,補完為止 2 g 判正誤 題意 t組資料。判斷a d b e c f是否等於g。1e9 a,b,c,g 1e9,0 d,e,f 1e9。保證不會出現指數和底數同為 0 的情況。思路 硬算會tle或mle。快速冪取模,為了增加過題概率,多取幾個模數判斷。includeusing namesp...

2020牛客寒假演算法基礎集訓營1

找規律,推公式 三角形個數為2 m n m n m 1 n 1 2 m n mn m 1 n 1 2 m n mn m 1 n 1 include include include include using namespace std typedef long long ll const int m...