mọi người ơi giúp em gấp với
Các nhà sinh vật học đã phát hiện ra một phân tử DNA lạ, được mô tả như một chuỗi N ký tự thuộc tập {A,B}. Một chuỗi không đột biến có kết quả là một chuỗi DNA chỉ có các ký tự A. Các nhà sinh vật học cho rằng điều này rất kỳ quặc, vì vậy họ bắt đầu nghiên cứu các đột biến chi tiết hơn. Họ phát hiện ra hai loại đột biến. Loại thứ nhất, chỉ thay đổi một ký tự duy nhất của chuỗi (A→B hoặc B→A). Loại thứ hai thay đổi cả một tiền tố của chuỗi, cụ thể thay thế tất cả các ký tự ở vị trí từ 1 đến K (1 ≤ K ≤ N) với A→B và B→A.
Yêu cầu: Tính số lượng đột biến ít nhất có thể, để chuyển đổi các phân tử từ trạng thái bắt đầu sang trạng thái cuối cùng của nó (chỉ chứa một ký tự A). Đột biến có thể xảy ra theo thứ tự bất kỳ.
Dữ liệu vào: input.txt
Kết quả ra output.txt: Gồm một số nguyên duy nhất là kết quả của bài toán.
Ví dụ 1:
input
4
ABBA
output
2
def tinh_so_dot_bien(input_file, output_file):
with open(input_file, 'r') as f:
N = int(f.readline().strip())
chuoi = f.readline().strip()
dot_bien = 0
i = 0
while i < N:
if chuoi[i] == 'B':
dot_bien += 1
while i < N and chuoi[i] == 'B':
i += 1
i += 1
with open(output_file, 'w') as f:
f.write(str(dot_bien) + '\n')
# Gọi hàm để thực hiện
tinh_so_dot_bien('input.txt', 'output.txt')
Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!
Lớp 11 - Năm thứ hai ở cấp trung học phổ thông, gần đến năm cuối cấp nên học tập là nhiệm vụ quan trọng nhất. Nghe nhiều đến định hướng tương lai và học đại học có thể gây hoang mang, nhưng hãy tự tin và tìm dần điều mà mình muốn là trong tương lai!
Copyright © 2021 HOCTAPSGK