P2921 USACO08DEC 在農場萬聖節

2021-08-29 18:44:23 字數 519 閱讀 4869

一道不錯的記搜題。

由於每乙個人點的出度只能是1,所以我們不難發現:每一條在環上的邊只能屬於一條環。換句話說:任何一條邊頂多屬於乙個環。這樣我們就可以用簡單的記搜來實現。

設具體的實現細節見**。

#include#includeusing namespace std;

const int maxn=100020;

int n,nxt[maxn],fst,dfn[maxn],huan[maxn],f[maxn];

inline int read()

dfn[x]=tim;

if(dfn[nxt[x]]>0)

dfs(nxt[x],tim+1);

if(huan[nxt[x]]==1)

f[x]=f[nxt[x]]+1;

return;

}int main()

for(int i=1;i<=n;i++) cout<

return 0;

}

P2921 USACO08DEC 在農場萬聖節

每年萬聖節,威斯康星的奶牛們都要打扮一番,出門在農場的n個牛棚裡轉 悠,來採集糖果.她們每走到乙個未曾經過的牛棚,就會採集這個棚裡的1顆糖果.農場不大,所以約翰要想盡法子讓奶牛們得到快樂.他給每乙個牛棚設定了乙個 後繼牛 棚 牛棚i的後繼牛棚是next i 他告訴奶牛們,她們到了乙個牛棚之後,只要再...

洛谷 P2894 USACO08FEB 酒店

題目描述 用線段樹維護三個值 區間最長空位長度,從左端點可以延伸的最長空位長度,從右端點可以延伸的最長空位長度。include include using namespace std const int n 2e6 7 int n,m intlen n max n maxl n maxr n laz...

USACO08MAR 土地購買

點此看題 首先考慮如果有乙個塊長和寬都比另乙個塊要小,那麼這個塊就沒有存在的意義了,我們可以先排序 長為第一關鍵字,寬為第二關鍵字,從小到大 然後從後往前掃,期間維護寬的最大值,如果最大值不比當前寬小,那麼這個塊沒用,我們去除完沒用的點之後再排一遍序 方法一樣 這樣就可以愉快的dpdp dp了,設d...