Nhiệm vụ của bạn là chấp nhận làm hai chuỗi gen đầu vào và một chuỗi "điểm chéo" và trả về chuỗi gen kết quả từ sự lai chéo được chỉ định.
Điều tôi muốn nói là, nói rằng bạn có các chuỗi [A, A, A, A, A, A, A]
và [Z, Z, Z, Z, Z, Z, Z]
, và vượt qua các điểm của 2
và 5
. Trình tự kết quả sẽ là [A, A, Z, Z, Z, A, A]
, bởi vì:
Băng qua đây: VV Chỉ số: 0 1 2 3 4 5 6 Gen 1: AAAAAAA Gen 2: Kết quả: AAZZZAA ^ ^
Lưu ý rằng trong khi tôi sử dụng các chữ cái ở đây để rõ ràng, thử thách thực tế sử dụng số cho gen.
Kết quả là chuỗi đầu tiên cho đến khi gặp điểm chéo, sau đó kết quả sẽ lấy từ chuỗi thứ hai cho đến khi gặp điểm chéo khác, sau đó kết quả sẽ lấy từ chuỗi đầu tiên cho đến khi gặp điểm chéo ...
Đầu vào:
Đầu vào có thể là bất kỳ hình thức hợp lý. Hai chuỗi có thể là một cặp, với các điểm là đối số thứ hai, cả ba có thể là các đối số riêng biệt, một bộ ba duy nhất
(genes 1, genes 2, cross-points)
, một bản đồ với các khóa được đặt tên ...Các điểm giao nhau sẽ luôn theo thứ tự, và sẽ luôn ở trong phạm vi. Sẽ không có điểm trùng lặp, nhưng danh sách các điểm giao nhau có thể trống.
Trình tự gen sẽ luôn có cùng độ dài và sẽ không trống.
Các chỉ số có thể là 0 hoặc 1 dựa.
Các gen sẽ luôn là số trong phạm vi 0-255.
Không quan trọng đối số nào là "gen 1" hay "gen 2". Trong trường hợp không có điểm chéo, kết quả có thể hoàn toàn là "gen 1" hoặc "gen 2".
Đầu ra
Đầu ra có thể là bất kỳ hình thức hợp lý nào không mơ hồ. Nó có thể là một mảng / danh sách các số, một mảng các số chuỗi, một chuỗi số được phân tách (một số ký tự không phải là số phải tách các số) ...
Nó có thể được trả lại hoặc in ra std-out.
Các mục có thể bằng các chương trình hoặc chức năng đầy đủ.
Các trường hợp thử nghiệm (genes 1, genes 2, cross points) => result
:
[0], [1], [0] => [1]
[0, 1], [9, 8], [1] => [0, 8]
[0, 2, 4, 6, 8, 0], [1, 3, 5, 7, 9, 1], [1, 3, 5] => [0, 3, 5, 6, 8, 1]
[1, 2, 3, 4], [5, 6, 7, 8], [] => [1, 2, 3, 4]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 2, 3, 6, 8] => [1, 1, 0, 1, 1, 1, 0, 0, 1, 1]
Đây là Code Golf.