Submission #9257465
Source Code Expand
#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=a;i<b;i++)
#define rrep(i,a,b) for(int i=a;i>=b;i--)
#define fore(i,a) for(auto &i:a)
#define all(x) (x).begin(),(x).end()
//#pragma GCC optimize ("-O3")
using namespace std; void _main(); int main() { cin.tie(0); ios::sync_with_stdio(false); _main(); }
typedef long long ll; const int inf = INT_MAX / 2; const ll infl = 1LL << 60;
template<class T>bool chmax(T& a, const T& b) { if (a < b) { a = b; return 1; } return 0; }
template<class T>bool chmin(T& a, const T& b) { if (b < a) { a = b; return 1; } return 0; }
//---------------------------------------------------------------------------------------------------
/*---------------------------------------------------------------------------------------------------
∧_∧
∧_∧ (´<_` ) Welcome to My Coding Space!
( ´_ゝ`) / ⌒i @hamayanhamayan0
/ \ | |
/ / ̄ ̄ ̄ ̄/ |
__(__ニつ/ _/ .| .|____
\/____/ (u ⊃
---------------------------------------------------------------------------------------------------*/
int N, M;
int MSK[1010], C[1010];
ll dp[1 << 10];
//---------------------------------------------------------------------------------------------------
void _main() {
cin >> N >> M;
rep(i, 0, M) {
string S;
cin >> S >> C[i];
fore(c, S) {
MSK[i] <<= 1;
if (c == 'Y') MSK[i] |= 0x01;
}
}
rep(msk, 0, 1 << N) dp[msk] = infl;
dp[0] = 0;
rep(msk, 0, 1 << N) rep(i, 0, M) chmin(dp[msk | MSK[i]], dp[msk] + C[i]);
ll ans = dp[(1 << N) - 1];
if (ans == infl) cout << -1 << endl;
else cout << ans << endl;
}
Submission Info
| Submission Time | |
|---|---|
| Task | I - Procurement |
| User | hamayanhamayan |
| Language | C++14 (GCC 5.4.1) |
| Score | 6 |
| Code Size | 1835 Byte |
| Status | AC |
| Exec Time | 3 ms |
| Memory | 256 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 6 / 6 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example_01.txt, example_02.txt, example_03.txt |
| All | example_01.txt, example_02.txt, example_03.txt, subtask_01_01.txt, subtask_01_02.txt, subtask_01_03.txt, subtask_01_04.txt, subtask_01_05.txt, subtask_01_06.txt, subtask_01_07.txt, subtask_01_08.txt, subtask_01_09.txt, subtask_01_10.txt, subtask_01_11.txt, subtask_01_12.txt, subtask_01_13.txt, subtask_01_14.txt, subtask_01_15.txt, subtask_01_16.txt, subtask_01_17.txt, subtask_01_18.txt, subtask_01_19.txt, subtask_01_20.txt, subtask_01_21.txt, subtask_01_22.txt, subtask_01_23.txt, subtask_01_24.txt, subtask_01_25.txt, subtask_01_26.txt, subtask_01_27.txt, subtask_01_28.txt, subtask_01_29.txt, subtask_01_30.txt, subtask_01_31.txt, subtask_01_32.txt, subtask_01_33.txt, subtask_01_34.txt, subtask_01_35.txt, subtask_01_36.txt, subtask_01_37.txt, subtask_01_38.txt, subtask_01_39.txt, subtask_01_40.txt, subtask_01_41.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| example_01.txt | AC | 1 ms | 256 KiB |
| example_02.txt | AC | 1 ms | 256 KiB |
| example_03.txt | AC | 1 ms | 256 KiB |
| subtask_01_01.txt | AC | 1 ms | 256 KiB |
| subtask_01_02.txt | AC | 1 ms | 256 KiB |
| subtask_01_03.txt | AC | 1 ms | 256 KiB |
| subtask_01_04.txt | AC | 3 ms | 256 KiB |
| subtask_01_05.txt | AC | 2 ms | 256 KiB |
| subtask_01_06.txt | AC | 3 ms | 256 KiB |
| subtask_01_07.txt | AC | 3 ms | 256 KiB |
| subtask_01_08.txt | AC | 2 ms | 256 KiB |
| subtask_01_09.txt | AC | 2 ms | 256 KiB |
| subtask_01_10.txt | AC | 3 ms | 256 KiB |
| subtask_01_11.txt | AC | 3 ms | 256 KiB |
| subtask_01_12.txt | AC | 1 ms | 256 KiB |
| subtask_01_13.txt | AC | 1 ms | 256 KiB |
| subtask_01_14.txt | AC | 3 ms | 256 KiB |
| subtask_01_15.txt | AC | 3 ms | 256 KiB |
| subtask_01_16.txt | AC | 2 ms | 256 KiB |
| subtask_01_17.txt | AC | 2 ms | 256 KiB |
| subtask_01_18.txt | AC | 3 ms | 256 KiB |
| subtask_01_19.txt | AC | 3 ms | 256 KiB |
| subtask_01_20.txt | AC | 2 ms | 256 KiB |
| subtask_01_21.txt | AC | 1 ms | 256 KiB |
| subtask_01_22.txt | AC | 3 ms | 256 KiB |
| subtask_01_23.txt | AC | 3 ms | 256 KiB |
| subtask_01_24.txt | AC | 2 ms | 256 KiB |
| subtask_01_25.txt | AC | 1 ms | 256 KiB |
| subtask_01_26.txt | AC | 3 ms | 256 KiB |
| subtask_01_27.txt | AC | 3 ms | 256 KiB |
| subtask_01_28.txt | AC | 2 ms | 256 KiB |
| subtask_01_29.txt | AC | 2 ms | 256 KiB |
| subtask_01_30.txt | AC | 2 ms | 256 KiB |
| subtask_01_31.txt | AC | 2 ms | 256 KiB |
| subtask_01_32.txt | AC | 3 ms | 256 KiB |
| subtask_01_33.txt | AC | 1 ms | 256 KiB |
| subtask_01_34.txt | AC | 2 ms | 256 KiB |
| subtask_01_35.txt | AC | 2 ms | 256 KiB |
| subtask_01_36.txt | AC | 1 ms | 256 KiB |
| subtask_01_37.txt | AC | 1 ms | 256 KiB |
| subtask_01_38.txt | AC | 2 ms | 256 KiB |
| subtask_01_39.txt | AC | 2 ms | 256 KiB |
| subtask_01_40.txt | AC | 3 ms | 256 KiB |
| subtask_01_41.txt | AC | 1 ms | 256 KiB |