t1:
題意:求區間取模後的最大值。
題解:我的思路有些清奇。
標算分塊,預處理出每個塊對於所有k取模後的最大值,然後分塊暴力找即可。
時間複雜度$o(n\sqrt)$
我的思路是對於k分情況。
當k<=50時,用st表暴力找,開50是因為記憶體實在不夠了。
對於其他情況,暴力搜尋所有形如$[ak,(a+1)k)$的區間,主席樹上dfs找出區間最大值,需要剪枝。
如果復(shu)雜(ju)度(hen)優(shui)秀的話,就可以ac了。
時間複雜度$o(nlog_2n\sqrt)$
t2:題意:
座標系內有n個點,求滿足以下條件的折線數,對1e9+7取模。
對於折線經過的點(x1,y1),(x2,y2)......(xk,yk)。
$\forall j \in (1,k] \ y_j < y_$
$\forall j \in (2,k] \ x_ < x_j < x_ \ or \ x_ < x_j < x_$
題解:考慮對於x進行dp,現將所有點按照x排序。
設dp[i][0/1]為目前在第i個點,下次折線向左/右延伸的方案數。
從左到右列舉所有點,然後倒序列舉之前的點。
當前節點可以和之前所有縱座標大於它的點連邊。
$dp[j][1]+=dp[i][0] \ (y_j > y_i)$
之前所有縱座標小於當前節點的點可以和它連邊連邊。
$dp[i][0]+=dp[j][1] \ (y_j < y_i)$
因為自下而上橫座標跨度不斷增大,所以要倒序列舉第二維保證正確性。
時間複雜度$o(n^2)$
t3:題意:
給乙個0/1矩陣,初始時有有乙個全0矩陣,每次可以將任意個四連通的0/1連通塊染色,求最少多少次操作後能得到目標矩陣。
題解:首先,染色的過程是可逆的,所以我們可以回溯染色過程。
然後考慮如何染色最優。
我們設從一點到所有點所經過的0/1邊界數的最大值為層數。
所以每次染色只有消除一層才是最優的,所以要使染色的聯通塊最大化。
每次染完一次,該點的層數減一,繼續染色,直到層數為0為止,這時矩陣一定為全0的。
不同點的層數可能是不同的,所以我們求出最小的層數,就是答案。
列舉每個點,從該點開始進行雙端佇列bfs,若經過0/1邊界,則距離為1,從隊尾入隊,反之從隊頭入隊。
到每個點的距離的最大值即為層數。
注意:因為初始狀態是全0,而不是全1,所以在bfs後對所有到1點的距離加1,在取最大值。
不同點的層數取最小值即為答案。
時間複雜度$o(n^4)$
考試反思 0921csp s模擬測試49 困頓
太弱。還是太弱。拉不開分差,離第一機房分數線估計還是300多分。但是,還是要罵 xx出題人。部分分非常少且沒有意義,t1基本只有0 純暴力20 100三個檔,t2正解是n2但是n3一分不給,還要卡n2的空間,t3的n5有51分但沒有任何提示,除了送了與正解根本就無關的7分。而且造的資料還出了鍋,這個...
模擬電路實驗箱QY JXSY49
模擬電路是指用來對模擬訊號進行傳輸 變換 處理 放大 測量和顯示等工作的電路。模擬訊號是指連續變化的電訊號。模擬電路是電子電路的基礎,它主要包括放大電路 訊號運算和處理電路 振盪電路 調製和解調電路及電源等。自然界中幾乎所有的物理量在時間和強度上均具有 連續 的特性,都屬於模擬量 被處理的物理量在進...
csp模擬 模擬測試16
fdasds include using namespace std define cle a memset a,0,sizeof a inline int read const int mod 1e9 7,maxn 1e3 100 int n,m,ans 0 int f maxn maxn int...