Với kích thước của bàn cờ và vị trí ban đầu của hiệp sĩ, hãy tính xác suất sau khi k
di chuyển, hiệp sĩ sẽ ở trong bàn cờ.
Ghi chú:
Các hiệp sĩ thực hiện tất cả 8 động tác có thể với xác suất bằng nhau.
Một khi hiệp sĩ ở ngoài bàn cờ, nó không thể quay lại bên trong.
Đầu vào
Các đầu vào được phân tách bằng dấu phẩy dưới dạng:
l,k,x,y
trong đó l
chiều dài và chiều rộng của bàn cờ, k
là số lần di chuyển mà hiệp sĩ sẽ thực hiện, x
là vị trí x của vị trí ban đầu của hiệp sĩ và y
là vị trí y của vị trí ban đầu của hiệp sĩ. Lưu ý rằng đó 0,0
là góc dưới bên trái của bảng và l-1,l-1
là góc trên cùng bên phải của bảng.
Thuật toán:
Bắt đầu với tọa độ ban đầu của hiệp sĩ. Thực hiện tất cả các di chuyển có thể cho vị trí này và nhân các di chuyển này với xác suất của chúng, cho mỗi lần di chuyển gọi đệ quy hàm tiếp tục quá trình này cho đến khi điều kiện kết thúc được đáp ứng. Điều kiện chấm dứt là nếu hiệp sĩ ở ngoài bàn cờ, trong trường hợp này trả về 0 hoặc số lần di chuyển mong muốn đã hết, trong trường hợp này trả về 1.
Như chúng ta có thể thấy rằng trạng thái hiện tại của đệ quy chỉ phụ thuộc vào tọa độ hiện tại và số bước được thực hiện cho đến nay. Do đó chúng ta có thể ghi nhớ thông tin này dưới dạng bảng.
tín dụng
Thử thách này ban đầu từ một bài đăng trên blog của crazyforcode.com được xuất bản theo giấy phép CC BY-NC-ND 2.5 IN . Nó đã được sửa đổi một chút để làm cho nó một chút thách thức hơn.