#include #include #include #include using namespace std; int w, n, m; int J[50]; int C[50]; struct Node{ int id; vector edge; }; int cap[50][50]; Node node[102]; bitset<50> bs; bitset<102> used; int dfs(int, int); void add(int, int, int); int main(){ cin >> w >> n; for (int i = 0; i> J[i]; cin >> m; for (int i = 0; i> C[i]; int nodes = 2 + n + m; for (int i = 0; i> q; bs.reset(); for (int j = 0; j> x; bs.set(x-1); } for (int j = 0; j