Không hỗ trợ Mobile

Chế độ luyện tập yêu cầu môi trường màn hình lớn để làm bài và chống gian lận hiệu quả. Vui lòng truy cập bằng máy tính (Desktop/Laptop) để tiếp tục thao tác.

Quay lại trang chủ

#2031 · Tập Đàn Cùng Thầy Khuyên

Thầy Khuyên dạo này vừa mới tìm được một niềm đam mê mới là âm nhạc. Thầy vừa tậu một cây đàn piano đặc biệt có 100 phím, được đánh số thứ tự từ 1 đến 100 từ trái sang phải.

Hôm nay, thầy Khuyên đang tập chơi một bản nhạc gồm N nốt. Bản nhạc này rất khắt khe, yêu cầu thầy phải bấm lần lượt từng nốt nhạc một. Với mỗi nốt thứ i, bản nhạc chỉ định rõ thầy phải bấm phím đàn vị trí A_i và đặc biệt là phải bấm bằng tay nào: tay trái (kí hiệu là L) hay tay phải (kí hiệu là R).

Tuy nhiên, vì mới tập chơi nên việc di chuyển tay liên tục trên bàn phím khiến thầy Khuyên rất mỏi. Mỗi khi thầy phải rê một bàn tay từ phím x sang phím y để bấm nốt tiếp theo, "độ mỏi" của thầy sẽ tăng thêm một lượng bằng đúng khoảng cách giữa hai phím, tức là ∣y−x∣. (Ngoài việc di chuyển tay ra thì thầy không bị mỏi thêm vì lý do nào khác).

May mắn là trước khi bắt đầu chơi nốt đầu tiên, thầy Khuyên có quyền đặt sẵn tay trái và tay phải ở bất kỳ phím nào thầy muốn để có tư thế chuẩn bị tốt nhất (lúc này độ mỏi đang bằng 0).

Bạn hãy viết chương trình giúp thầy Khuyên tính toán xem: Nếu tối ưu hóa việc đặt tay ban đầu, tổng "độ mỏi" ít nhất mà thầy Khuyên phải chịu khi đánh xong bản nhạc này là bao nhiêu?

Dữ liệu vào

  • Dòng đầu tiên chứa số lượng nốt nhạc N với (1≤N≤100).
  • N dòng tiếp theo, mỗi dòng chứa một số nguyên A_i với (1≤A_ i ≤100) biểu thị vị trí phím đàn, và một ký tự S_i (L hoặc R) yêu cầu bấm bằng tay trái hay tay phải

Dữ liệu ra

In ra một số nguyên duy nhất là độ mỏi tối thiểu của thầy Khuyên sau khi kết thúc bản nhạc

BẢNG TỔNG QUAN KẾT QUẢ

# Tài khoản Kết suất Lúc nộp
1
Đ
Thích Thanh Đăng @codewar2026_trteam20
1 ms 216 KB
562 Bytes
27/05/2026
20:15
2
C
Celestia @codewar2026_trteam23
1 ms 216 KB
631 Bytes
27/05/2026
20:36
3
C
Cometo @codewar2026_trteam27
1 ms 216 KB
904 Bytes
27/05/2026
20:13
4
T
Thợ Săn Tân Thủ @codewar2026_trteam29
1 ms 216 KB
1709 Bytes
27/05/2026
20:50
5
C
Celestia @codewar2026_trteam23
1 ms 220 KB
612 Bytes
27/05/2026
20:38
6
C
Master Chef @codewar2026_trteam18
1 ms 220 KB
1698 Bytes
27/05/2026
21:17
7
K
KFC @codewar2026_trteam2
1 ms 224 KB
563 Bytes
27/05/2026
20:01
8
C
Cometo @codewar2026_trteam27
1 ms 224 KB
904 Bytes
27/05/2026
20:12
9
A
AITI @codewar2026_trteam22
1 ms 224 KB
951 Bytes
27/05/2026
20:59
10
1 ms 284 KB
528 Bytes
27/05/2026
19:40
11
Z
ZepSiCa @codewar2026_trteam41
1 ms 288 KB
729 Bytes
27/05/2026
20:44
12
G
gd_mobiXLiem @codewar2026_trteam39
1 ms 288 KB
744 Bytes
27/05/2026
20:35
13
M
M&L @codewar2026_trteam31
1 ms 292 KB
535 Bytes
27/05/2026
20:15
14
1 ms 300 KB
795 Bytes
26/05/2026
14:00
15
A
Born To AC @codewar2026_trteam9
1 ms 300 KB
822 Bytes
27/05/2026
21:13
16
1 ms 304 KB
550 Bytes
30/05/2026
11:20
17
N
N3wbieCod3r @codewar2026_trteam11
1 ms 304 KB
959 Bytes
27/05/2026
20:03
18
L
C Legend @codewar2026_trteam61
2 ms 228 KB
709 Bytes
27/05/2026
19:44
19
C
Người máy dây code @codewar2026_trteam38
2 ms 284 KB
748 Bytes
27/05/2026
19:43
20
C
Người máy dây code @codewar2026_trteam38
2 ms 284 KB
778 Bytes
27/05/2026
19:42

LỊCH SỬ CÁ NHÂN

Vui lòng đăng nhập để xem lịch sử làm bài của bạn.

THẢO LUẬN BÀI TOÁN

Chưa có thảo luận nào cho bài này.

GỢI Ý & HƯỚNG DẪN

Giải thích ví dụ 1: Giả sử bản nhạc yêu cầu thầy Khuyên đánh 4 nốt: Tay trái phím 3, Tay phải phím 6, Tay trái phím 9, Tay phải phím 1.

Chiến thuật tối ưu:

  • Lúc bắt đầu, thầy Khuyên khôn khéo đặt sẵn tay trái ở phím 3 và tay phải ở phím 6.
  • Đánh nốt thứ 1 (Trái - 3): Tay trái đã ở sẵn phím 3, độ mỏi không tăng.
  • Đánh nốt thứ 2 (Phải - 6): Tay phải đã ở sẵn phím 6, độ mỏi không tăng.
  • Đánh nốt thứ 3 (Trái - 9): Thầy di chuyển tay trái từ phím 3 sang phím 9. Độ mỏi tăng thêm ∣9−3∣=6.
  • Đánh nốt thứ 4 (Phải - 1): Thầy di chuyển tay phải từ phím 6 về phím 1. Độ mỏi tăng thêm ∣1−6∣=5.

Kết quả: Tổng độ mỏi ít nhất thầy phải chịu là 6+5=11

Viết code