#define _CRT_SECURE_NO_DEPRECATE #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define mpair make_pair #define all(v) v.begin(),v.end() using namespace std; typedef long long ll; typedef long double ld; const ld epsylon = 1e-9; int mem[64][1<<15]; struct shop{ int delivery; vector > prods; }; vector a; int n,m; int prs[70][1<<15]; int pr[70][20]; int solve(int from, int mask) { if (mask == 0) { return mem[from][mask] = 0; } if (from >= (int)a.size()) { mem[from][mask] = -2; } int best = -2; vector ones; for (int i = 0; i < m; ++i) { if (mask & (1<> n >> m; a.resize(n); for (int i =0 ;i ones; for (int j =0;j