Giới thiệu
Boardgame là một trò chơi kinh điển giữa những đứa trẻ, nhưng có một số đứa trẻ cảm thấy nhàm chán khi chơi một ván cờ từng bước. Bây giờ họ muốn kết quả được hiển thị trước khi họ đặt tay lên bảng.
Thử thách
Giả sử boardgame này: >---#<---X---<X<--#-$
> means the start of the game
- means a position without danger
< means the player should return one step back
X means the player won't move next round
# means a portal where the player returns to the start position
$ the first player to get there or after there wins the game
Đầu vào bao gồm một chuỗi với các khía cạnh của boardgame được mô tả ở trên và hai mảng với một số giá trị (từ 1
đến 6
) để cả người chơi (trẻ em A
và trẻ em B
) có được khi chơi một khối.
Cả hai mảng sẽ luôn có cùng độ dài> = 1.
Đứa trẻ A
luôn bắt đầu trò chơi.
Bạn phải xuất ra đứa trẻ có kết thúc hoặc gần cuối cùng trước.
Nếu không ai có được kết thúc và cả hai đứa trẻ ở cùng một vị trí in 0
hoặc bất kỳ giá trị giả nào khác.
Nếu một mảng hết trong khi mảng kia có các cuộn xúc xắc còn lại (do một người chơi bị mất vài lượt trên Xs), các cuộn xúc xắc còn lại sẽ được sử dụng hết.
Đối với tác vụ này, bạn có thể tạo một chương trình / hàm, đọc đầu vào từ stdin hoặc lấy tham số / đối số và đầu ra / trả về / in ra đứa trẻ chiến thắng.
Vì đây là môn đánh gôn , câu trả lời ngắn nhất tính bằng byte sẽ thắng!
Ví dụ đầu vào và đầu ra
Bạn cũng có thể sử dụng các định dạng đầu vào khác nhau, nhưng bạn chỉ nên lấy các giá trị boardgame, kid-A và kid-B.
Ví dụ 1:
board: >---#<---X---<X<--#-$
kid-A: [3,6,6,5,2,1]
kid-B: [4,5,3,5,5,5]
output: A
Giải thích:
>---#<---X---<X<--#-$ # both kids in position
B--A#<---X---<X<--#-$ # kid-A moved 3 to -
B--A#<---X---<X<--#-$ # kid-B moved 4 to # and returned home
B---#<---A---<X<--#-$ # kid-A moved 6 to X and will wait one round
B---#<---A---<X<--#-$ # kid-B moved 5 to < returned one to # and returned home
>--B#<---A---<X<--#-$ # kid-B moved 3 to -
>--B#<---X---<A<--#-$ # kid-A moved 6 to < returned one to X and will wait again
>---#<--BX---<A<--#-$ # kid-B moved 5 to -
>---#<---X--B<A<--#-$ # kid-B moved 5 to < returned one to -
>---#<---X--B<X<--#A$ # kid-A moved 5 to -
>---#<---X---<X<-B#A$ # kid-B moved 5 to -
>---#<---X---<X<-B#-$A # kid-A moved 2 and won the game!
Ví dụ 2:
board: >-<<<<<$
kid-A: [1,2,3]
kid-B: [5,5,4]
output: 0
Ví dụ 3:
board: >-<-<#<-<-<-$
kid-A: [5,4,2]
kid-B: [1,1,1]
output: B
Giải thích:
>-<-<#<-<-<-$ # both kids in position
>-<-<#<-<-<-$ # kid-A moved 5 to # returned home
AB<-<#<-<-<-$ # kid-B moved 1 to -
>B<A<#<-<-<-$ # kid-A moved 4 to < returned one to -
>B<A<#<-<-<-$ # kid-B moved 1 to < returned one to -
AB<-<#<-<-<-$ # kid-A moved 2 to # returned home
AB<-<#<-<-<-$ # kid-B moved 1 to < returned one to -
Current position: (A:0, B:1) output: B