

Python ạ
Bờm có n con bò vừa đạt huy chương (vàng, bạc hoặc đồng) trong cuộc thi "Hoa hậu dành cho các cô bò sữa". Trong lễ chào mừng sự thành công của cuộc thi Bờm mời m thợ ảnh đến chụp ảnh trong buổi lễ. Các con bỏ đứng thành một hàng ngang, chúng đều đeo huy chương để chụp ảnh. Máy ảnh của các thợ chụp ảnh có thể không thể chụp hết toàn bộ n con bò đạt giải, thợ ảnh thứ i chỉ có thể chụp được một dãy các con bỏ liên tiếp từ vị trí lị đến ri Sau khi chụp ảnh, Bờm muốn biết trong mỗi bức ảnh của các thợ ảnh có bao nhiêu con bỏ đạt huy chương vàng, bao nhiêu con bò đạt huy chương bạc và bao nhiêu con bò đạt huy chương đồng. INPUT: Dòng đầu tiên là số nguyên dương n, m 1 <= n m <= 100 ) đó là n con bò và m thợ ảnh. Dòng thứ hai chứa các số a1, a_{2} ,...,a n (1 <= a_{i} <= 3) thể hiện huy chương đạt được của các con bò. Trong đó: • a_{i} = 1 thể hiện con bò thứ i đạt huy chương vàng • a_{i} = 2 thể hiện con bò thứ i đạt huy chương bạc • a_{i} = 3 thể hiện con bò thứ i đạt huy chương đồng m dòng tiếp theo, mỗi dòng chứa hai số 1 và r (1 <= l <= r <= n) thể hiện đoạn liên tiếp các con bò đạt giải có trong bức ảnh của mỗi thợ chụp. OUTPUT: • Gồm m dòng, mỗi dòng chứa ba số nguyên là số lượng con bò đạt huy chương vàng, huy chương bạc và huy chương đồng. Ví dụ: INPUT
6 3
2 1 1 3 2 1
1 6
3 3
2 4
OUTPUT
3 2 1
1 0 0
2 0 1
Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
n,m=map(int,input().split())
a=[0]+list(map(int,input().split()))
d=[[0]*(n+1) for i in range(5)]
for i in range(1,n+1):
d[1][i]=d[1][i-1]
d[2][i]=d[2][i-1]
d[3][i]=d[3][i-1]
d[a[i]][i]+=1
for i in range(m):
l,r=map(int,input().split())
print(d[1][r]-d[1][l-1])
print(d[2][r]-d[2][l-1])
print(d[3][r]-d[3][l-1])
Hãy giúp mọi người biết câu trả lời này thế nào?
Bảng tin