Mạch DNA
Cho mạch mã gốc DNA bốn loại nucleotide , , , . Để tiết kiệm bộ nhớ, mạch mã gốc đã được nén lại thành một chuỗi gồm các cặp là số lần xuất hiện liên tiếp nucleotide và loại nucleotide tương ứng.
Ví dụ: Mạch mã gốc nén thành .
Các nucleotide ở hai mạch của phân tử DNA liên kết với nhau theo nguyên tắc bổ sung, trong đó liên kết với , liên kết với . Do vậy, nếu biết trình tự nucleotide trên một mạch có thể suy ra trình tự của mạch còn lại.
Ví dụ: Một đoạn phân tử DNA ở sinh vật nhân thực có trình tự nucleotide trên mạch mã gốc là . Trình tự nucleotide trên mạch bổ sung của đoạn DNA này là: .
Cho một chuỗi ký tự mô tả mạch mã gốc DNA sau khi đã nén. Hãy lập trình xác định mạch bổ sung của mạch mã gốc sau khi giải nén.
Dữ liệu vào
Một chuỗi có độ dài không vượt quá . Dữ liệu đảm bảo chuỗi sau khi giải nén có độ dài không vượt quá .
Dữ liệu ra
Chuỗi ký tự là mạch bổ sung của mạch mã gốc sau khi giải nén.
Ràng buộc
- Độ dài chuỗi không vượt quá .
- Chuỗi sau khi giải nén có độ dài không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5A2G1A11T1C | TTTTTCCTAAAAAAAAААG | Mạch mã gốc sau khi giải nén là: . Mạch bổ sung là: . |
Bình luận