提出 #13254247
ソースコード 拡げる
#include<iostream>
#include<cmath>
#include<cstdlib>
#include<string>
#include<cstring>
#include<algorithm>
#include<vector>
#include<map>
#include<iomanip>
#include<queue>
using namespace std;
typedef long long ll;
typedef std::pair<int, int> ipair;
bool lessPair(const ipair& l, const ipair& r){return l.second < r.second;}
bool morePair(const ipair& l, const ipair& r){return l.second > r.second;}
template<class T> inline bool chmin(T& a, T b) {
if (a > b) {
a = b;
return true;
}
return false;
}
template<class T> inline bool chmax(T& a, T b) {
if (a < b) {
a = b;
return true;
}
return false;
}
const ll MOD = 1e9 + 7;
const long long INF = 1LL<<60;
void add(long long &a, long long b) { a += b; if (a >= MOD) a -= MOD; }
void sub(long long &a, long long b) { a -= b; if (a < 0) a += MOD; }
void mul(long long &a, long long b) { a *= b; a %= MOD; }
ll llmin(ll a, ll b) { if (a < b) return a; else return b; }
ll llmax(ll a, ll b) { if (a < b) return b; else return a; }
ll llabs(ll a) { if (a >= 0) return a; else return - a; }
ll llmodpow(ll a, ll n) {
if (n == 0) return 1;
ll tmp = llmodpow(a, n / 2);
mul(tmp, tmp);
if (n & 1) mul(tmp, a);
return tmp;
}
int main() {
int N, M;
cin >> N >> M;
ll dp[1050];
for (int i = 0; i < (1<<N); i++) dp[i] = INF;
dp[0] = 0;
string S;
ll C;
for (int m = 0; m < M; m++) {
cin >> S >> C;
int flg = 0;
for (int i = 0; i < N; i++) {
if (S[i] == 'Y') flg |= (1<<i);
}
for (int mask = 0; mask < (1<<N); mask++) {
chmin(dp[mask | flg], dp[mask] + C);
}
}
ll ans = dp[(1<<N) - 1];
if (ans == INF) ans = -1;
cout << ans << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | I - 部品調達 |
| ユーザ | redultimate |
| 言語 | C++14 (GCC 5.4.1) |
| 得点 | 6 |
| コード長 | 1831 Byte |
| 結果 | AC |
| 実行時間 | 3 ms |
| メモリ | 256 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 6 / 6 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| 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 |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 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 | 3 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 | 2 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 | 3 ms | 256 KiB |
| subtask_01_31.txt | AC | 3 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 | 3 ms | 256 KiB |
| subtask_01_35.txt | AC | 3 ms | 256 KiB |
| subtask_01_36.txt | AC | 2 ms | 256 KiB |
| subtask_01_37.txt | AC | 2 ms | 256 KiB |
| subtask_01_38.txt | AC | 3 ms | 256 KiB |
| subtask_01_39.txt | AC | 3 ms | 256 KiB |
| subtask_01_40.txt | AC | 3 ms | 256 KiB |
| subtask_01_41.txt | AC | 2 ms | 256 KiB |