Submission #27600466
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
long long dp[1010][1 << 13];
int main(){
int N, M;
cin >> N >> M;
vector<long long>A(M);
vector<int>key(M, 0);
for(int i = 0; i < M; i++){
cin >> A[i];
int b;
cin >> b;
for(int j = 0; j < b; j++){
int c;
cin >> c;
c--;
key[i] |= 1 << c;
}
}
for(int i = 0; i <= M; i++){
for(int j = 0; j <= (1 << N); j++){
dp[i][j] = 1e18;
}
}
for(int i = 0; i <= M; i++) dp[i][0] = 0;
for(int i = 0; i < M; i++){
for(int bit = 0; bit < (1 << N); bit++){
dp[i + 1][bit] = min(dp[i + 1][bit], dp[i][bit]);
dp[i + 1][bit | key[i]] = min(dp[i + 1][bit | key[i]], dp[i][bit] + A[i]);
}
}
if(dp[M][(1 << N) - 1] == 1e18) cout << -1 << endl;
else cout << dp[M][(1 << N) - 1] << endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Get Everything |
| User | macle |
| Language | C++ (GCC 9.2.1) |
| Score | 500 |
| Code Size | 976 Byte |
| Status | AC |
| Exec Time | 46 ms |
| Memory | 39536 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-00, 00-sample-01, 00-sample-02 |
| All | 00-sample-00, 00-sample-01, 00-sample-02, 01-handmade-03, 01-handmade-04, 01-handmade-05, 01-handmade-06, 01-handmade-07, 02-random-08, 02-random-09, 02-random-10, 02-random-11, 02-random-12, 02-random-13, 02-random-14, 02-random-15, 02-random-16, 02-random-17, 02-random-18, 02-random-19, 02-random-20, 02-random-21, 02-random-22, 02-random-23, 02-random-24, 02-random-25, 02-random-26, 02-random-27, 02-random-28, 02-random-29, 02-random-30, 02-random-31, 02-random-32, 02-random-33, 02-random-34, 02-random-35, 02-random-36, 02-random-37, 02-random-38, 02-random-39 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-00 | AC | 9 ms | 3568 KiB |
| 00-sample-01 | AC | 2 ms | 3460 KiB |
| 00-sample-02 | AC | 2 ms | 3524 KiB |
| 01-handmade-03 | AC | 7 ms | 7568 KiB |
| 01-handmade-04 | AC | 46 ms | 39528 KiB |
| 01-handmade-05 | AC | 2 ms | 4052 KiB |
| 01-handmade-06 | AC | 9 ms | 6384 KiB |
| 01-handmade-07 | AC | 40 ms | 39536 KiB |
| 02-random-08 | AC | 15 ms | 11872 KiB |
| 02-random-09 | AC | 2 ms | 3660 KiB |
| 02-random-10 | AC | 16 ms | 11364 KiB |
| 02-random-11 | AC | 6 ms | 5984 KiB |
| 02-random-12 | AC | 15 ms | 8408 KiB |
| 02-random-13 | AC | 8 ms | 7836 KiB |
| 02-random-14 | AC | 7 ms | 6284 KiB |
| 02-random-15 | AC | 12 ms | 11560 KiB |
| 02-random-16 | AC | 14 ms | 12088 KiB |
| 02-random-17 | AC | 18 ms | 10464 KiB |
| 02-random-18 | AC | 17 ms | 14908 KiB |
| 02-random-19 | AC | 11 ms | 10436 KiB |
| 02-random-20 | AC | 5 ms | 4936 KiB |
| 02-random-21 | AC | 18 ms | 20188 KiB |
| 02-random-22 | AC | 27 ms | 29344 KiB |
| 02-random-23 | AC | 8 ms | 7804 KiB |
| 02-random-24 | AC | 26 ms | 23588 KiB |
| 02-random-25 | AC | 23 ms | 22512 KiB |
| 02-random-26 | AC | 15 ms | 14824 KiB |
| 02-random-27 | AC | 6 ms | 5512 KiB |
| 02-random-28 | AC | 14 ms | 8448 KiB |
| 02-random-29 | AC | 29 ms | 20484 KiB |
| 02-random-30 | AC | 8 ms | 6488 KiB |
| 02-random-31 | AC | 22 ms | 23272 KiB |
| 02-random-32 | AC | 12 ms | 9480 KiB |
| 02-random-33 | AC | 11 ms | 8220 KiB |
| 02-random-34 | AC | 10 ms | 9688 KiB |
| 02-random-35 | AC | 28 ms | 22828 KiB |
| 02-random-36 | AC | 12 ms | 10564 KiB |
| 02-random-37 | AC | 2 ms | 4028 KiB |
| 02-random-38 | AC | 6 ms | 6668 KiB |
| 02-random-39 | AC | 25 ms | 22492 KiB |