[带权二分图][KM算法][模板] SGU252 Railway Communication

为什么模板题都a的这么艰难

调了这么久发现其实原来的就是对的只是样例可以有不同解,蠢的程度也是没谁了。。。

题意就是求DAG上的最小路径覆盖数,而且使得所有路径权值之和最小,而且要输出路径。将每一个点拆成两个点,分别在二分图左右两侧,读入的所有的路都是从左往右。   求最小路径覆盖也就是求最大匹配,而在这一条件下要求总长度最小,将边附上权值求最小权最大匹配即可。由于KM算法 继续阅读“[带权二分图][KM算法][模板] SGU252 Railway Communication”

[CF][构造][思维] CF1017C The Phone Number

这题官方题解给了个Dilworth’s theorem,并不懂是什么东西。。。

写出来一些后可以找规律(多写),然后可以发现就是可以把原序列分成几块连续的上升序列,只不过块之间的相对顺序反了过来。。这个也不知道怎么证明,但是感觉是找不到比这个更好的。。这样的话就相当于LIS+LDS的长度是块的大小加上块的数量。实现的时候注意最后一个块可能不完整。

继续阅读“[CF][构造][思维] CF1017C The Phone Number”