官方题解是一个n2logn的dp做法 不过有一个简单易想的费用流做法 对每个小精灵,连边(A,i,1,pi) (B,i,1,ui) (i,t,1,0) (i,t,1,-pi*ui) 最后连边(s,A,a,0) (s,B,b,0) 跑最大费用最大流即可,注意精度误差 #include<bits/stdc++.h> using namespace std; ]; ; ],p[],cur[],q[]; ],c[]; ]; int len,n,m,a,b,t; void add(int x,int y…