1. 程式人生 > >2019PKUTHU WC題解

2019PKUTHU WC題解

二分 兩種 alt .com 計算 com mage 變化 連通

PKU:

機試:

d1t1:

考慮拓撲序的合法性,每個點的入邊必須先加入。f[S]表示先出來的是S集合的點,對應邊的方案數。加入x的時候,把入邊方向確定,出邊自然後面會確定的

2^n*n

d1t2:

虛樹,點數=邊數+1,NTT,

先咕咕咕

d1t3:

地主鬥。。。

炸彈,火箭先處理

剩下牌的特征值(每個方式最大的),以及對應的牌數

hash表存一下

然後再找B的

特征值要狀壓,還要邊加入邊計算特征值。

d2t1:

a[i]=0的部分分:

分成n段

每個點在每個段的方案數有相同之處

f[i][j]表示前i個,第i個取再前j段的前綴和

轉移的時候

枚舉最左邊選擇j的l

l到i的部分就是盒子放球的問題

據說是APIO賽艇弱化版0?

滿分:

區間dp

dp[i][l][r],前i高位,確定了[l],[r]方案數

還要什麽數位dp記錄0/1

咕咕咕咕

d2t2:

兩個環有公共邊,

一定在一個SCC裏

反之,可能八字圖情況,在SCC裏,卻沒有公共邊

先求出SCC

再在SCC中求出點雙連通分量個數,和就是ans

SCC中不是V-DCC的環坑定沒有公共邊

SCC中的V-DCC一定還是SCC

而且沒有上面的情況了

所以就是一個聯通塊

d2t3

每個圓被完全覆蓋就可以刪掉

n^2*m部分分

兩種方法:

①圓的面積並

②對於i,找到最左最右的圓和i的交的角度

技術分享圖片

記錄紅色角的最大值

左邊同理

如果角相互有覆蓋,A0就被覆蓋了

發現所有剩下的點

都在{A0,A1,,,An,O}組成的凸包上

O是變化的

對於{Ai}先建立凸包

每個O,二分包住的部分刪掉。

O(nlogn+mlogn)

2019PKU\THU WC題解