Bây giờ, tất cả bạn nên làm quen với trình tự Conway (hay còn gọi là trình tự nhìn và nói) :
1
11
21
1211
111221
312211
etc
Bạn cũng có thể bắt đầu bằng bất kỳ số tùy ý nào làm điểm bắt đầu. Hãy f(s)là yếu tố tiếp theo của chuỗi. Bây giờ cho mỗi cho schúng ta có thể tìm thấy f(s). Điều ngược lại không tầm thường: không phải ai cũng ycó thể tìm được người tiền nhiệm snhư vậy f(s) = y. Ví dụ, y = 1chúng ta không thể tìm thấy một người tiền nhiệm. Nhưng nếu ycó độ dài chẵn, bạn có thể chia nó thành các cặp chữ số mô tả từng phần của tiền thân:
513211 divides in 51,32,11
so: 51 comes from 11111
32 comes from 222
11 comes from 1
put together: 111112221
Vì vậy, theo cách này, chúng ta có thể định nghĩa một người tiền nhiệm duy nhất cho mỗi ychiều dài chẵn.
Lưu ý : 'người tiền nhiệm' sđược định nghĩa theo cách này thường KHÔNG thỏa mãn f(s) = y.
Mục tiêu
Viết đoạn mã chức năng / chương trình chấp nhận một chuỗi các chữ số làm đầu vào
- tính toán phần tử tiếp theo của chuỗi Conway nếu độ dài của chuỗi đầu vào là số lẻ
- tính toán tiền thân của chuỗi đầu vào như được xác định ở trên nếu độ dài chuỗi đầu vào là chẵn .
Mã ngắn nhất trong byte thắng.
Các câu hỏi gần đây dựa trên trình tự nhìn và nói:
11111111111111sẽ là gì? Theo thông số kỹ thuật của bạn, nó sẽ được 1111111. Bạn nên sửa đổi đặc điểm kỹ thuật của bạn để xác định một câu trả lời hợp lý cho việc này.
11111111111111đơn giản là không có người tiền nhiệm. Đó là một đầu vào bất hợp pháp.
513111chia thành51,32và11?