Thử thách:
Tạo một chương trình lấy đầu vào của một số nguyên khác không dương và xuất 4 số tiếp theo trong chuỗi được mô tả dưới đây.
Lưu ý: Kiểm tra xem đầu vào có thực sự là số nguyên khác không dương không
Sự nối tiếp:
Mỗi số trong dãy này (ngoài số đầu tiên, là đầu vào) sẽ bao gồm n chữ số, trong đó n là số chẵn. Nếu chúng ta chia số thành n / 2 cặp, cho mỗi cặp, chữ số đầu tiên sẽ là số lần chữ số thứ hai xuất hiện trong số trước
Giải thích trực quan :
Xem xét ví dụ này "trình tự khởi động" hoặc đầu vào 6577
Số tiếp theo trong chuỗi sẽ giống như thế này 161527
Bởi vì đầu vào có 1 "6", 1 "5" và 2 "7" s.
Nếu đầu vào có quá nhiều chữ số (nhiều hơn 9 chữ số), bạn sẽ không thể có được đầu ra chính xác
Ví dụ: 111111111111
(12 1))
Số tiếp theo trong chuỗi phải mô tả 12 1 '. Do đó, chúng tôi chia nó thành 9 1 và 3 1 (tổng 9 + 3 = 12)
Số tiếp theo:9131
Bạn nên lặp lại 4 lần cho đầu vào và xuất nó (trả về danh sách / mảng gồm 4 số nguyên hoặc xuất nó bằng cách tách chúng với khoảng trắng, dòng mới cũng được chấp nhận)
"Số có thể được viết theo nhiều cách, làm thế nào để tôi viết nó?" :
Nếu bạn nghĩ về nó, đầu vào ví dụ 6577
cũng có thể được viết là 271516 (hai 7, một 5, một sáu). Tuy nhiên đây là đầu ra không hợp lệ. Bạn nên lặp lại số từ trái sang phải. Do đó, 161527. Nếu đó là số 7657
lần lặp của số 7, thì số tiền là 6 và số tiền là 5, do đó, đầu ra hợp lệ sẽ là271615
Ví dụ I / O:
Đầu vào: 75
Đầu ra:1715 211715 12311715 4112131715
Đầu vào: 1
Đầu ra:11 21 1211 3112
Đầu vào: 111111111111
(12 1 ')
Đầu ra:9131 192113 31191213 23411912
Điều này không giống với câu hỏi "Nói những gì bạn thấy", bởi vì các chuỗi khác nhau: https://oeis.org/A005150 <- Câu hỏi này trả về các số như thế này:
Đầu vào: 1211 Kết quả: 111221
Trong khi trình tự tôi yêu cầu sẽ làm
Đầu vào: 1211 Đầu ra: 3112
Hai chuỗi là khác nhau và yêu cầu các thuật toán khác nhau.
Trình tự được hỏi của tôi: https://oeis.org/A063850 Trình tự
"có thể trùng lặp": https://oeis.org/A005150
Thông số kỹ thuật quan trọng:
Vì nó không đủ rõ ràng cho một số người đã cố gắng trả lời câu hỏi này, đầu ra chính xác cho k chars trong đó k> 9 không phải là "kc" (trong đó c là char) mà là 9c (k-9) c, v.v. 12 1 không phải 121
(12 1) mà là 9131
(9 1, (12-9) 1 và v.v.
Nếu nghi ngờ, mã của bạn sai nếu nó bao giờ xuất ra một số có số chữ số lẻ (như 121), thì mã này phải có đầu ra là số chẵn do tính chất của chuỗi.
Đây là mã golf do đó mã có ít byte thắng nhất.
23411912
thay vì 23411219
?
1111111111111111111
(19 1 ' )