[COCI2223 - Contest 04] Bài 1: Bingo

Xem PDF

Nộp bài

Điểm: 50 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 512M
Input: bàn phím
Output: màn hình

Tác giả:
Dạng bài

Đã đến lúc chơi Bingo!

Để chơi Bingo, bạn cần có người quản trò và một chiếc trống có ~90~ quả bóng, mỗi quả bóng chứa một số từ ~1~ đến ~90~, sao cho mỗi số xuất hiện chính xác trên một quả bóng.

Trước khi trò chơi bắt đầu, người quản trò đưa cho mỗi người trong số n người chơi một bảng có kích thước ~5 × 5~. Mỗi trường của bảng chứa một số nguyên từ ~1~ đến ~90~, trong đó tất cả các số nguyên trên bảng đều khác nhau. Mỗi người chơi nhận được một bảng duy nhất.

Sau khi người chơi nhận được bảng của mình, trò chơi có thể bắt đầu.

Người quản trò bắt đầu rút bóng từ trống. Sau khi rút được quả bóng có số ~x_i~, người đó đọc số đó và đặt quả bóng sang một bên. Sau đó, người chơi kiểm tra bảng của mình và nếu có số được rút ra, họ sẽ đánh dấu nó.

Khi người chơi đánh dấu được ~5~ số trên một hàng, cột, đường chéo chính hoặc đường chéo phú, người đó sẽ có Bingo! và hét lên. Trò chơi kết thúc và người chơi đó thắng.

Để làm cho trò chơi trở nên thú vị hơn, người quản trò đã quyết định đưa ra một luật bổ sung. Cụ thể, người quản trò sẽ rút ra ~m~ quả bóng từ trống trước khi bất kỳ ai được phép hét Bingo! (ngay cả khi người đó đã đánh dấu tất cả các số trong một hàng, cột hoặc đường chéo).

Tuy nhiên, ngay khi người quản trò rút được ~m~ quả bóng, đã có một sự náo động: tất cả người chơi đều đồng thời hét lên Bingo!.

Người quản trò bối rối và không biết phải tin ai. Để giải quyết tình trạng này, anh ấy đã nhờ bạn giúp đỡ. Xác định người chơi nào đã có Bingo! sau khi rút được m quả bóng, tức là người chơi nào có tất cả các số được đánh dấu trên ít nhất một hàng, cột hoặc đường chéo.

Input

  • Dòng đầu tiên chứa số nguyên ~n~ (~1 \leq n \leq 50~) là số người chơi.
  • Tiếp theo là ~n~ nhóm dòng, mỗi nhóm có dạng:

~\space\space\space\space\space\space\space~~\circ~ Dòng đầu tiên trong nhóm là một xâu không quá 20 kí tự gồm các chữ cái tiếng Anh in thường, là tên của người chơi. Không có hai người chơi nào cùng tên.

~\space\space\space\space\space\space\space~~\circ~ Mỗi dòng trong ~5~ dòng tiếp theo gồm ~5~ số nguyên trong đoạn từ ~1~ đến ~90~, là những số được viết trên bảng của người chơi. Các số trong bảng đôi một phân biệt.

  • Dòng tiếp theo gồm số nguyên ~m~ (~1 \leq m \leq 90~) là số quả bóng mà người quản trò lấy ra trước khi những người chơi hét Bingo!.
  • Dòng tiếp theo gồm ~m~ số nguyên trong đoạn từ ~1~ đến ~90~, là những số mà người quản trò rút được. Mỗi số chỉ xuất hiện tối đa một lần.

Output

  • Dòng đầu tiên, đưa ra số nguyên ~k~ là số người có Bingo! sau khi rút ~m~ quả bóng.
  • Mỗi dòng trong ~k~ dòng tiếp theo là tên của người chơi có Bingo! sau khi rút ~m~ quả bóng. Các cái tên được in ra phải đúng như thứ tự xuất hiện trong input.

Sample Input 1

3
babylasagna
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
25 26 27 28 29
30 31 32 33 34
nataliebalmix
10 20 30 40 50
11 21 31 41 51
12 22 32 42 52
13 23 33 43 53
14 24 34 44 54
lettri
89 88 87 86 10
85 84 83 11 82
81 80 12 79 78
77 13 76 75 74
14 73 72 71 70
6
10 11 12 13 14 15

Sample Output 1

3
babylasagna
nataliebalmix
lettri

Sample Input 2

1
honi
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
4
1 2 49 50

Sample Output 2

0

Sample Input 3

4
rim
15 23 14 26 34
12 11 13 16 17
90 67 45 24 18
85 82 77 66 22
62 71 32 35 7
tim
61 89 25 63 12
29 30 31 32 33
11 17 42 24 18
88 82 77 66 22
44 71 54 35 7
dagi
15 23 14 26 34
12 11 13 16 17
90 67 45 24 18
85 82 77 66 22
62 71 36 35 7
dim
15 23 14 26 34
12 11 13 16 17
90 67 45 24 18
85 82 77 66 22
42 51 32 33 7
7
15 11 66 7 42 30 61

Sample Output 3

1
tim

Explanation

  • Ở ví dụ đầu tiên, babylasagnaBingo! ở hàng đầu tiên, nataliebalmixBingo! ở cột đầu tiên, lettriBingo! ở đường chéo phụ.
  • Ở ví dụ thứ hai, chỉ có ~4~ quả bóng được rút nên không có ai có Bingo!.

Bình luận đầu tiên

Bình luận

Không có bình luận nào.