AT_past201912_i 部品調達
题目描述
有 $m$ 个数列,对于每个数列,给出一个长为 $n$ 的字符串 $s_i$ 表示 $1$ 到 $n$ 之间的整数是否在第 $i$ 个数列中出现了(用`Y`表示“是”,用`N`表示“否”;字符串下标从 $1$ 开始)。每个数列都有一个选择的代价 $c_i$。
请选择若干个数列,使得将这些数列拼接后,$1$ 到 $n$ 之间的每一个整数都在拼接后的数列中出现。输出所选择的数列的代价之和的最小值。
输入格式
第一行为两个整数 $n$ 和 $m$。
接下来 $m$ 行,每行一个长为 $n$ 且仅含`Y`和`N`的字符串 $s_i$ 以及选择代价 $c_i$。
输出格式
若目标可达成,请输出最小代价之和;否则,输出`-1`。
### 数据规模与约定
$1 \le n \le 10$,$1 \le m \le 1000$,$1 \le c_i \le 10^9$,上述数值均为整数。
说明/提示
### 注意
この問題に対する言及は、2019年12月29日 05:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。
試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。
### 制約
- $ 1\ \leqq\ N\ \leqq\ 10 $
- $ 1\ \leqq\ M\ \leqq\ 1,000 $
- $ S_i $ は長さ $ N $ の文字列である。
- $ S_i $ の各文字は `Y` または `N` である。
- $ 1\ \leqq\ C_i\ \leqq\ 1,000,000,000 $
- $ C_i $ は整数である。
### Sample Explanation 1
$ 2 $ 番目と $ 3 $ 番目のセットを購入すると、$ 20\ +\ 10\ =\ 30 $ 円で部品 $ 1,\ 2,\ 3 $ すべてが揃う。
### Sample Explanation 2
部品 $ 5 $ がどのセットにも含まれておらず、すべての部品を揃えることは不可能である。