luogu p4212 外太空旅行
題解為什麼都是隨機化或bitset的呀
這題明明就是最大團板子題啊
是不是對最大團問題有什麼誤解
搜尋加3個剪枝沒有壓力跑過去了呀
沒開o2 :
開o2 :
首先講講怎麼搜尋吧
我們可以考慮設立 f(i),表示只考慮標號 ≥ i 的點所能構成的最大團的點數
那麼我們就可以從 n 到 1 依次列舉,假設列舉到 i 號點,我們可以欽定強制選擇i 號點作為團中的點,然後從小到大依次列舉 i 號點所連向的編號大於 i 的點,選為團中的點,然後不斷進行這樣的操作,注意要保證當前選的點要和之前選的點都有連邊才合法。
注意 f(i) ≤ f(i+1) + 1,因為我每次只新增乙個點,不可能把最大團的點數加2。所以如果把 f(i) 更新為了 f(i+1) + 1,那麼就可以直接退出。(最優性剪枝 1)
如果當前深度是 depth,最後乙個列舉的點是 u,設 d(u) 為編號大於 u 的且與u 有連邊的點的個數,那麼如果 depth + d(u) ≤ f(i),那麼這之後也肯定不可能會有更優的解,直接退出。(最優性剪枝 2)
假設當前深度是 depth,最後乙個列舉的點是 u,如果 depth + f(u+1) ≤ f(i),那麼這之後肯定不可能會有更優的解,直接退出。(最優性剪枝 3)
code:
#include
#define n 55
using
namespace std;
int n, ans, g[n]
[n], s[n]
[n], f[n]
;void
dfs(
int m,
int dep)
for(
int i =
1; i <= m; i ++)}
intmain()
printf
("%d"
, ans)
;return0;
}
4212 旅行規劃(travel)
題意 oivillage 是乙個風景秀美的鄉村,為了更好的利用當地的旅遊資源,吸引遊客,推動經濟發展,xkszltl 決定修建了一條鐵路將當地 n nn 個最著名的經典連線起來,讓遊客可以通過火車從鐵路起點 1 11 號景點 出發,依次遊覽每個景區。為了更好的評價這條鐵路,xkszltl 為每乙個景...
JZOJ4212 我想大聲告訴你
因為小y 是知名的白富美,所以自然也有很多的追求者,這一天這些追求者打算進行一次遊戲來踢出一些人,小r 自然也參加了。這個遊戲有n 個人參加,每一輪隨機選出乙個還沒有出局的人x,接著x 會出局。x 在出局之後剩下的人會受到一次攻擊,每乙個人在遭到攻擊之後會有p 的概率出局。注意遭到攻擊出局的人是不能...
BZOJ4212 神牛的養成計畫
題目大意 給定 n 個字串 s m 次詢問,每次詢問給定兩個字串 s 1,s 2 求 n 個字串中有多少個串滿足 s 1 是其字首且 s 2 是其字尾。n leq 2000,m leq 10 5 sum s sum s 1 s 2 leq 2 times 10 6 題解考慮正反建 trie 樹,原題...