[ARC006A] 宝くじ
题意翻译
大概是一个人去买彩票,这里的规则是:选择六个不同的数(0~9共10个数),有6个中奖号码和一个奖励号码。规则是
1. 六个数与中奖号码全部相同(不考虑顺序,下同):1等奖;
2. 五个数相同且不同的数与奖励号码相同:2等奖;
3. 五个数相同:3等奖;
4. 四个数相同:4等奖;
5. 三个数相同:5等奖;
如果同时符合多个条件则取更好的
第一行读入六个中奖号码(空格隔开);
第二行读入奖励号码;
第三行读入选择的六个数(空格隔开);
问他是几等奖
感谢@长河落日 提供的翻译
题目描述
[problemUrl]: https://atcoder.jp/contests/arc006/tasks/arc006_1
高橋君は夏の宝くじをこっそり買っていました。今日はその宝くじの当選発表日です。購入者は、$ 0 $ から $ 9 $ までの $ 10 $ 個の数字から重複せずに $ 6 $ つの数字を選び購入します。発表日には $ 6 $ つの本数字と $ 1 $ つのボーナス数字が発表され、購入した宝くじとその数字がいくつ一致しているかで以下のように当選の等級が決まります。
- $ 1 $ 等 : $ 6 $ つ数字が一致
- $ 2 $ 等 : $ 5 $ つ数字が一致し、残りの $ 1 $ つの数字がボーナス数字と一致
- $ 3 $ 等 : $ 5 $ つ数字が一致
- $ 4 $ 等 : $ 4 $ つ数字が一致
- $ 5 $ 等 : $ 3 $ つ数字が一致
上記のどれにも当てはまらない場合ははずれになります。 また、複数の等級を満たす場合は上位の等級(数字が小さい等級)が適用されます。
高橋君が購入した宝くじの等級を求めなさい。 なお、与えられる当選番号とボーナス数字の $ 7 $ つの数字は互いに異なります。 入力は以下の形式で標準入力から与えられる。 > $ E_0 $$ E_1 $$ E_2 $$ E_3 $$ E_4 $$ E_5 $ $ B $ $ L_0 $$ L_1 $$ L_2 $$ L_3 $$ L_4 $$ L_5 $
- 入力は $ 3 $ 行ある。
- $ 1 $ 行目には、当選番号を表す $ 6 $ つの整数 $ E_i(0≦i≦5, $ $ 0≦E_i≦9) $ が与えられる。
- $ E_i $ は昇順に並んでいる。
- $ 2 $ 行目には、ボーナス数字を表す整数 $ B(0≦B≦9) $ が与えられる。
- $ 3 $ 行目には、高橋君が購入した宝くじの $ 6 $ つの数字を表す整数 $ L_j(0≦j≦5, $ $ 0≦L_j≦9) $ が与えられる。
- $ L_i $ は昇順に並んでいる。
- $ L_i $ の $ 6 $ つの数字は互いに異なります。
- $ E_i $ と $ B $ を合わせた $ 7 $ つの数字は互いに異なります。
高橋君が購入した宝くじの等級数 ($ 1 $ 等の場合は `1`、$ 2 $ 等の場合は `2`、のように) を標準出力に $ 1 $ 行で出力せよ。
また、はずれの場合は `0` を出力せよ。
なお、最後には改行を出力せよ。 ```
1 2 3 4 5 6
7
1 2 3 4 5 6
```
```
1
```
- $ 6 $ つの数字全てが当選番号と購入宝くじとで一致しているので、$ 1 $ 等にになります。
```
0 1 3 5 7 9
4
0 2 4 6 8 9
```
```
0
```
- 一致している数字が $ 0 $ と $ 9 $ の $ 2 $ つのみなので、当選の条件を満たさず、はずれです。
```
0 2 6 7 8 9
4
0 5 6 7 8 9
```
```
3
```
- $ 0,\ 6,\ 7,\ 8,\ 9 $ の $ 5 $ つが一致していますが、ボーナス数字の $ 4 $ は購入した宝くじの数字の中にないので $ 3 $ 等になります。
```
1 3 5 6 7 8
9
3 5 6 7 8 9
```
```
2
```
- $ 3,\ 5,\ 6,\ 7,\ 8 $ の $ 5 $ つが一致しており、ボーナス数字の $ 9 $ も購入した宝くじの数字の中にあるので $ 2 $ 等になります。
```
0 1 3 4 5 7
8
2 3 5 7 8 9
```
```
5
```
- $ 3,\ 5,\ 7 $ の $ 3 $ つの数字が一致しているので $ 5 $ 等になります。