Trong bóng đá liên kết (còn được gọi là bóng đá), đá luân lưu là biện pháp phá vỡ thứ hai có thể được sử dụng trong một trận đấu không thể kết thúc bằng hòa, sau hiệp phụ (tức là hiệp hội bóng đá ngoài giờ).
Trong loạt sút luân lưu, trọng tài chính ném một đồng xu để xác định mục tiêu nào là loạt sút luân lưu xảy ra, và sau đó ném một đồng xu khác để xác định đội nào bắt đầu trước. Tuy nhiên, điều duy nhất liên quan đến thử thách này là những gì xảy ra sau đó, được mô tả dưới đây.
Mỗi đội có 5 hình phạt có sẵn khi bắt đầu, và tỷ số hình phạt là 0-0. Nếu tại bất kỳ thời điểm nào, hình phạt còn lại của một đội không đủ để thay đổi đội chiến thắng hiện tại, thì loạt đá luân lưu dừng lại.
Nếu không có hình phạt nào còn lại, nhưng điểm của cả hai đội đều bằng nhau, một hình phạt bổ sung sẽ được cấp cho cả hai đội. Điều này được lặp lại cho đến khi các điểm không bằng nhau.
Sau loạt sút luân lưu, đội có số điểm phạt lớn nhất sẽ thắng trận đấu.
Thử thách
Thử thách của bạn là, đưa ra hai danh sách A
và B
thể hiện hình phạt nào mà đội A và đội B ghi được tương ứng, để xác định xem chúng có đại diện cho loạt sút luân lưu hợp lệ hay không. Một loạt đá luân lưu là hợp lệ nếu có thể đạt được trạng thái đại diện bởi đầu vào, bất kể đội chiến thắng có thể được xác định hay không. Lưu ý rằng bạn có thể phải kiểm tra cả hai kịch bản (bắt đầu Đội A, bắt đầu Đội B), vì, nếu trạng thái được mô tả trong đầu vào có thể truy cập được cho ít nhất một kịch bản, đầu vào là hợp lệ. Nếu độ dài của danh sách là khác nhau, nhóm được đại diện bởi nhóm dài hơn bắt đầu trước (nhóm chỉ có thể có nhiều yếu tố hơn nhóm khác và nhóm của danh sách ngắn hơn không thể bắt đầu, do đó nhóm của danh sách dài hơn sẽ bắn hai hình phạt liên tiếp, vì danh sách ngắn hơn sẽ bị cạn kiệt sớm).
Ví dụ chi tiết
Bạn có thể bỏ qua phần Quy tắc bên dưới, đây chỉ là để giúp giải quyết thử thách.
Giả sử bạn lấy cú sút này làm đầu vào, -
có nghĩa là không có bàn thắng nào được ghi và X
có nghĩa là bàn thắng được ghi (không hợp lệ):
Team A: - X X X X
Team B: - - - - X
Assuming team A starts first:
Team A: - (0 - 0) (max possible score 4 - 5)
Team B: - (0 - 0) (max possible score 4 - 4)
Team A: X (1 - 0) (max possible score 4 - 4)
Team B: - (1 - 0) (max possible score 4 - 3)
Team A: X (2 - 0) (max possible score 4 - 3)
Team B: - (2 - 0) (max possible score 4 - 2)
Team A: X (3 - 0) (max possible score 4 - 2)
Team A already has a higher score than B could ever have, but the input hasn't
ended yet, so it's invalid if team A is first.
Assuming team B starts first:
Team B: - (0 - 0) (max possible score 5 - 4)
Team A: - (0 - 0) (max possible score 4 - 4)
Team B: - (0 - 0) (max possible score 4 - 3)
Team A: X (1 - 0) (max possible score 4 - 3)
Team B: - (1 - 0) (max possible score 4 - 2)
Team A: X (2 - 0) (max possible score 4 - 2)
Team B: - (2 - 0) (max possible score 4 - 1)
Team A already has a higher score than B could ever have, but the input hasn't
ended yet, so it's invalid if team B stars first.
The input is invalid no matter which team starts first, so it's considered
invalid.
Ngược lại, đây là một ví dụ hợp lệ:
Team A: X X X
Team B: - - -
Assuming team A starts first:
Team A: X (1 - 0) (max possible score 5 - 5)
Team B: - (1 - 0) (max possible score 5 - 4)
Team A: X (2 - 0) (max possible score 5 - 4)
Team B: - (2 - 0) (max possible score 5 - 3)
Team A: X (3 - 0) (max possible score 5 - 3)
Team B: - (3 - 0) (max possible score 5 - 2)
It can be determined that team A wins, however the input has ended, so it's
valid if team A starts first. Therefore, the input is valid.
Một ví dụ khác, lần này có thêm hình phạt:
Team A: X - X - - - X -
Team B: - X X - - - X X
Assuming team A starts first:
Team A: X (1 - 0) (max possible score 5 - 5)
Team B: - (1 - 0) (max possible score 5 - 4)
Team A: - (1 - 0) (max possible score 4 - 4)
Team B: X (1 - 1) (max possible score 4 - 4)
Team A: X (2 - 1) (max possible score 4 - 4)
Team B: X (2 - 2) (max possible score 4 - 4)
Team A: - (2 - 2) (max possible score 3 - 4)
Team B: - (2 - 2) (max possible score 3 - 3)
Team A: - (2 - 2) (max possible score 2 - 3)
Team B: - (2 - 2) (max possible score 2 - 2)
First 5 penalties result in a tie, so we move on to extra penalties.
Team A: -, Team B: - (2 - 2)
Team A: X, Team B: X (3 - 3)
Team A: -, Team B: X (3 - 4)
It can be determined that team B wins, however the input has ended, so it's
valid if team A starts first. Therefore, the input is valid.
Đây là một đầu vào hợp lệ khi còn quá sớm để xác định người chiến thắng:
Team A: X X - -
Team B: - X - X
Assuming team A starts first:
Team A: X (1 - 0) (max possible score 5 - 5)
Team B: - (1 - 0) (max possible score 5 - 4)
Team A: X (2 - 0) (max possible score 5 - 4)
Team B: X (2 - 1) (max possible score 5 - 4)
Team A: - (2 - 1) (max possible score 4 - 4)
Team B: - (2 - 1) (max possible score 4 - 3)
Team A: - (2 - 1) (max possible score 3 - 3)
Team B: X (2 - 2) (max possible score 3 - 3)
The input has ended before the winner can be determined, so it's valid if team A
starts first. Therefore, the input is valid.
Cuối cùng, đây là một đầu vào trong đó độ dài của danh sách khác nhau:
Team A: - - -
Team B: X X - X
Since team B shot more penalties, it starts first:
Team B: X (0 - 1) (max possible score 5 - 5)
Team A: - (0 - 1) (max possible score 4 - 5)
Team B: X (0 - 2) (max possible score 4 - 5)
Team A: - (0 - 2) (max possible score 3 - 5)
Team B: - (0 - 2) (max possible score 3 - 4)
Team A: - (0 - 2) (max possible score 2 - 4)
Team B: X (0 - 3) (max possible score 2 - 4)
It can be determined that team B wins, however the input has ended, so it's
valid.
Quy tắc
- Đội nào bắn trước có thể là A hoặc B, bạn không thể cho rằng một người sẽ luôn bắn trước.
- Các danh sách sẽ có cùng độ dài hoặc độ dài của chúng sẽ khác nhau.
- Bạn có thể chọn bất kỳ hai giá trị riêng biệt và nhất quán nào để thể hiện các hình phạt được ghi / không được bảo vệ.
- Các danh sách cũng có thể được biểu diễn dưới dạng số nguyên được chuyển đổi từ cơ sở 2, chuỗi hoặc định dạng danh sách gốc của ngôn ngữ của bạn. Nếu định dạng cơ sở 2 phỏng đoán được chọn, quy tắc đầu vào áp dụng cho các số được chuyển đổi thành cơ sở 2 tính toán (vì vậy các chữ số
1
và2
có thể có nghĩa là được ghi và không được bảo vệ hoặc không được ghi điểm và được ghi tương ứng). Nhị phân thông thường không được phép , vì người ta không thể xác định sự hiện diện của các số 0 đứng đầu trong biểu diễn nhị phân dự định. - Đây là môn đánh gôn , vì vậy giải pháp ngắn nhất sẽ thắng. Tuy nhiên, xin đừng nản lòng khi trả lời ngay cả khi có vẻ như ngôn ngữ của bạn không thể "đánh bại những người chuyên ngành".
Các trường hợp thử nghiệm
Trong các trường hợp thử nghiệm này, 0
di chúc đại diện cho mục tiêu không có mục tiêu và 1
ý chí đại diện cho mục tiêu.
Định dạng:
[Team A], [Team B]
Đầu vào hợp lệ:
[], []
[0], [0]
[0], [1]
[1], [1]
[0], []
[1, 1, 1, 1], [0, 0, 1, 1]
[0, 1, 1, 1, 1], [0, 1, 1, 0]
[0, 0, 0, 0, 1], [0, 0, 0, 1, 0]
[0, 0, 0, 0, 1], [0, 0, 0, 1]
[1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1]
[0, 1, 1, 1, 1], [0, 1, 1, 0, 1]
[1, 1, 1], [0, 0, 0]
[1, 1, 1, 1], [0, 0, 1]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Đầu vào không hợp lệ:
[0, 1, 1, 1, 1], [0, 1, 1, 0, 0]
[0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 1, 0]
[0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 1]
[1, 1, 1, 0], [0, 0, 0]
[1, 1, 1, 1], [0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
[1, 0, 1, 0, 1], [0, 1, 0, 1, 0, 1]
[0, 0, 0, 0, 1], [0, 1, 1, 1, 0]
[[0,0],[1,1]]
(hoặc bất kỳ trường hợp thử nghiệm nào trong đó một trong hai danh sách bên trong có 2 mục) là đúng, vì trò chơi vẫn đang diễn ra (giống như các trường hợp thử nghiệm có [[0],[1]]
hoặc [[0],[]]
vẫn đang được tiến hành)?