最最最基本模型
有n个任务,可以选择A任务或者B任务,代价分别是a,b,还有一些三元组关系,[x,y,z]表示如果x任务和y任务选的任务不同,将会有一个额外的代价c,现在分配任务,使总代价最小。
按以上方式建图,跑最小割即是答案。
为什么呢?
其实这个图有个好性质,就是如果你已经割了两个不在一侧的边,那你必然要割中间的一条,这样的话,就可以用了。
题设是不同的任务会产生代价,那我们把不同的放在两侧就行了。
T1&T1’:
把模型改一下,改成相同会产生代价。
那就交换一下顺序,这样可以保证割了相同的时,中间的也会被割掉一个。
由于是a、b的连边是相反的,在建图之前我们需要染色。