這個東西一看就是二維偏序嗎?
首先考慮把乙個權值為v的點拆成v的相同的點,這v個點相互不可比的。
這樣答案變成了最小鏈覆蓋。
dilworth定理:最小鏈覆蓋=最大反鏈。
乙個點拆成了v的點,因為這v個點互不可比,那這v個點肯定要同時選,所以其實相當求點權和最大的反鏈,這個寫個sb動態規劃就行了。
code:
#include
#define fo(i, x, y) for(int i = x; i <= y; i ++)
#define fd(i, x, y) for(int i = x; i >= y; i --)
#define max(a, b) ((a) > (b) ? (a) : (b))
using
namespace
std;
int t, n, m, a[1005][1005];
int main()
}
TJOI2015 組合數學
為了提高智商,zjy開始學習組合數學。某一天她解決了這樣乙個問題 給乙個網格圖,其中某些格仔有財寶。每次從左上角出發,只能往右或下走。問至少要走幾次才可能把財寶全撿完。但是她還不知足,想到了這個問題的乙個變形 假設每個格仔中有好多塊財寶,而每一次經過乙個格仔至多只能撿走一塊財寶,其他條件不變,至少要...
TJOI2015 組合數學
題目 學習了 rm dilworth 定理,即偏序集的最小全序集劃分等於最大反鏈長度 定理的內容看起來非常自閉,偏序集 全序集和反鏈都是個啥 偏序集其實非常常見,經典的二維偏序 三維偏序其實就是最基本的偏序關係,比如說乙個二元組集合 a 對於 x 1,y 1 x 2,y 2 in a 當 x 1 l...
TJOI2015 組合數學
為了提高智商,zjy開始學習組合數學。某一天她解決了這樣乙個問題 給乙個網格圖,其中某些格仔有財寶。每次從左上角出發,只能往右或下走。問至少要走幾次才可能把財寶全撿完。但是她還不知足,想到了這個問題的乙個變形 假設每個格仔中有好多塊財寶,而每一次經過乙個格仔至多只能撿走一塊財寶,其他條件不變,至少要...