Có nhiều cách để tạo ra các từ ngẫu nhiên. Bạn có thể lấy các âm tiết ngẫu nhiên từ một bộ, bạn có thể sử dụng n-tuples, có thể là mạng thần kinh (họ không thể làm gì?), Xen kẽ giữa phụ âm và nguyên âm, v.v ... Phương pháp mà thử thách này dựa trên là tồi tệ nhất . Nó sử dụng chuỗi Markov để tạo ra các từ ngẫu nhiên. Nếu bạn là chuỗi Markov quen thuộc, có lẽ bạn biết tại sao phương pháp này rất khủng khiếp.
Nếu bạn muốn đọc về chuỗi Markov, bấm vào đây .
Chương trình của bạn sẽ lấy một hoặc nhiều từ đầu vào và tạo một từ ngẫu nhiên duy nhất, thông qua phương pháp của chuỗi Markov có trọng số. Vì điều đó có lẽ có ý nghĩa với không ai ngoài tôi, đây là một lời giải thích thông qua việc sử dụng hình ảnh của chuỗi Markov với đầu vào làabba
:
(Tất cả các trọng số cạnh đều giống nhau cho tất cả các hình ảnh) Chương trình của bạn sẽ xuất đường dẫn thông qua chuỗi Markov dựa trên văn bản đầu vào. Như bạn có thể thấy, có một cơ hội 1/2 nó sẽ xuất raa
, 1/8 cơ hội aba
, 1/16 cơ hội abba
, 1/32 cơ hội ababa
, v.v.
Dưới đây là một số ví dụ khác về chuỗi Markov:
yabba dabba doo
wolfram
supercalifragilisticexpialidocious
Nếu bạn muốn thêm ví dụ, sử dụng này . (Tôi đã làm việc quá sức với nó)
Chi tiết về thử thách:
- Đầu vào có thể được lấy dưới dạng danh sách các chuỗi hoặc dưới dạng khoảng trắng, dấu phẩy hoặc chuỗi phân tách dòng mới
- Bạn có thể cho rằng tất cả các từ sẽ hoàn toàn viết thường mà không có dấu câu (ASCII 97-122)
- Bạn có thể viết một chương trình hoặc một chức năng
- Để kiểm tra, có lẽ bạn có thể nhập các ví dụ và xem liệu tất cả các đầu vào có thẳng hàng với chuỗi Markov không
Đây là môn đánh gôn , vì vậy chương trình của bạn được tính theo byte.
Hãy cho tôi biết nếu bất kỳ phần nào của điều này là không rõ ràng, và tôi sẽ cố gắng làm cho nó có ý nghĩa hơn.
b
nên bạn không thể tạo ra một đôi b
. Hơn nữa một khi bạn đạt được một b
nó dường như không thể trở lại để start
tạo ra các từ khác). Tôi tin rằng bạn phải làm rõ các yêu cầu là gì ...
yabba dabba doo
là một tai nạn. Tôi sẽ sửa nó càng sớm càng tốt. Khi không thể quay lại để bắt đầu, bạn chỉ tạo một từ từ một nhóm từ nhất định . Điều đó làm rõ nó?