源點向每個試題連容量為1的邊,試題向試題型別連容量為1的邊,試題型別向匯點連容量為本型別所需題數的邊.跑最大流
#include#include#include#include#include#include#define pd(i) (i % 2 == 1) ? i + 1 : i - 1
using namespace std;
int k,n,s,t = 1990,tot,dis[2001],ans,hu[2001],sum;
vectord[2000];
struct kkk e[10001];
inline void add(int x,int y,int v)
inline bool bfs()
} }return dis[t] != -1;
}inline int dfs(int u,int a)
} return _ans;
}int main()
for(int i = 1;i <= n; i++)
add(s,i,1);
} while(bfs())
if(ans != sum)
for(int i = 1;i <= k; i++)
return 0;
}
洛谷 P2763 試題庫問題
問題描述 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。程式設計任務 對於給定的組卷要求,計算滿足要求的組卷方案。輸入格式 第1行有2個正整數k和n 2 k 20,k ...
題解 P2763 試題庫問題
題目描述 問題描述 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。程式設計任務 對於給定的組卷要求,計算滿足要求的組卷方案。輸入輸出格式 輸入格式 第1行有2個正整數k...
P2763 試題庫問題 最大流
原題 題解 其實就是就是n個試題和k配對。建圖方法 s連i i n j連t j k 且邊的流量是a i 如題連i j就行了。跑一邊最大流,從k列舉,輸出答案。然而洛谷上要英文冒號。include define inf 0x7fffffff using namespace std const int ...