Truy vấn Đoạn và Sao chép
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Bạn quản lý một danh sách các mảng, ban đầu chỉ có một mảng gồm phần tử. Bạn cần xử lý truy vấn thuộc ba loại:
- Cập nhật: Gán giá trị tại vị trí trong mảng bằng .
- Tính tổng: Tính tổng các phần tử từ vị trí đến trong mảng .
- Sao chép: Tạo một bản sao của mảng và thêm vào cuối danh sách.
Dữ liệu vào
Dòng đầu chứa hai số nguyên và : kích thước mảng ban đầu và số truy vấn.
Dòng thứ hai chứa số nguyên : các giá trị ban đầu của mảng.
dòng tiếp theo, mỗi dòng mô tả một truy vấn:
1 k a x— gán trong mảng2 k a b— tính tổng từ đến trong mảng3 k— sao chép mảng
Dữ liệu ra
Với mỗi truy vấn loại 2, in ra tổng tương ứng.
Ràng buộc
- Mảng luôn tồn tại tại thời điểm truy vấn
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 6 2 3 1 2 5 3 1 2 1 1 5 2 2 1 5 1 2 2 5 2 1 1 5 2 2 1 5 |
13 13 13 15 |
Ban đầu mảng 1 = [2,3,1,2,5]. Sao chép mảng 1 → mảng 2 = [2,3,1,2,5]. Tổng [1,5] mảng 1 = 13. Tổng [1,5] mảng 2 = 13. Gán vị trí 2 mảng 2 = 5 → [2,5,1,2,5]. Tổng [1,5] mảng 1 = 13 (không đổi). Tổng [1,5] mảng 2 = 15. |
Bình luận