NOIP2020 集訓
11.23 11.23 11.23
做了道 CF514E 加深了矩陣加速 dp 轉移的方法。
即原本 dp 方程為
f
i
=
∑
j
=
1
100
f
i
−
j
×
g
s
j
f_{i}=\sum\limits_{j=1}^{100}f_{i-j}\times gs_j
fi=j=1∑100fi−j×gsj ,其中
g
s
j
gs_j
gsj 為深度為
j
j
j 的點的個數。
然後考慮矩陣優化一下就好了,時間複雜度
O
(
10
0
3
×
log
m
)
O(100^{3}\times\log m)
O(1003×logm)
為了加強程式碼能力做了道大模擬 CF1439A2,反正我寫了5k程式碼,寫了將近 1.5 小時
然後做了兩道 ds 題
思路還是挺簡單的,首先答案 a n s = ∏ P i max k i ans=\prod P_i^{\max k_i} ans=∏Pimaxki 於是我們對於根號內的質因數用線段樹維護最大指數,大於根號的用可持久化線段樹維護一下就好了,時間複雜度 O ( n log 2 n ) O(n \log ^2 n) O(nlog2n)
由於序列單調不增,經過操作1後也單調不增,我們就能想到二分。對於操作1我們二分出第一個小於 y y y 的數然後線段樹區間修改。對於操作二,我們為了方便線段樹上處理先讓 y y y 加上 [ 1 , x ] [1,x] [1,x] 的權值這樣就可以從 1 1 1 開始做,然後再線上段樹上分治一下就好了。時間複雜度 O ( n log 2 n ) O(n \log ^2 n) O(nlog2n)
相關文章
- NOIp2020遊記
- NOIP2020退役記
- NOIP2020(退役)遊記
- 2024.7.2 集訓
- 訓練集、驗證集、測試集
- 2024 暑假集訓
- 集訓隨記
- 集訓(一)-ezret
- 資料集訓練
- 2024.7.26 集訓筆記筆記
- 2024.8.14 總結(集訓)
- 2024.8.22 總結(集訓)
- 2024.8.23 總結(集訓)
- 2024.8.20 總結(集訓)
- 暑假集訓記錄
- XDFZ集訓日記
- 「閒話」NOIP 集訓
- 劃分訓練集與測試集
- [40](CSP 集訓)CSP 聯訓模擬 2
- 暑假集訓CSP提高模擬4 & 暑假集訓CSP提高模擬5
- 集訓 4 & 模擬 5
- 資料集訓練+1
- flutter新手集訓營(上)Flutter
- fashion資料集訓練
- 集訓模擬賽10
- 2024.10.2 總結(集訓;DP)
- 國慶集訓筆記筆記
- 國慶集訓 Day 1
- 集訓D1-3
- 集訓D4-5
- 集訓隊互測 2024
- 2024暑期集訓總結
- 暑假集訓 加賽1
- 省隊集訓遊記
- [國家集訓隊] Tree I
- 暑期集訓模擬賽3
- 暑期集訓模擬賽1
- 2024初秋集訓——提高組 #40