BZOJ 3997 組合數學

2022-05-13 11:08:13 字數 476 閱讀 7017

bzoj 3997 傳送門

這題是乙個比較明顯的最小鏈覆蓋,只不過還給每條鏈加上了權值

$dilworth$定理:最小鏈覆蓋數=最長反鏈長度

一般用$dilworth$定理都是求最長反鏈,這題算是逆運用吧

發現能構成反鏈的兩點一定是具有「左上、右下」的位置關係

於是我們從右上角$<1,m>$開始,$dp$到左下角$$即可

//

by newera

#include using

namespace

std;

typedef

long

long

ll;ll t,dp[

1005][1005],dat[1005][1005

],n,m;

intmain()

return0;

}

bzoj3997 組合數學 遞推

第一瞬間以為是網路流,看完資料範圍果斷棄療。但是考慮到這個有點像對偶圖轉最長路。就是求一條從左下到右上的最長路徑,大概可以證明這就是最少的次數。簡單的證明如下 1.必要性。顯然成立,這幾個點之間不能互相到達,至少需要走這幾個點才能全部取完。2.充分性。反證法,假設有幾個點沒有被取完。那麼對於每乙個點...

BZOJ 3997 TJOI2015 組合數學

time limit 20 sec memory limit 128 mb submit 936 solved 679 submit status discuss 給出乙個網格圖,其中某些格仔有財寶,每次從左上角出發,只能向下或右走。問至少走多少次才能將財寶撿完。此對此問題變形,假設每個格仔中有好多...

bzoj 3997 TJOI2015 組合數學

給出乙個網格圖,其中某些格仔有財寶,每次從左上角出發,只能向下或右走。問至少走多少次才能將財寶撿完。此對此問題變形,假設每個格仔中有好多財寶,而每一次經過乙個格仔至多只能撿走一塊財寶,至少走多少次才能把財寶全部撿完 x 這個點不能順路走到 y 當且僅當 y 在 x 的右上角 答案就是從左下角走到右上...