Olympic VNU 2025 - Giá sách
Xem dạng PDF
Gửi bài giải
Điểm:
55,00 (OI)
Giới hạn thời gian:
2.0s
Giới hạn bộ nhớ:
1G
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT
Trong một nhà sách có ~n~ giá sách, giá sách thứ ~i~ có ~a_i~ quyển sách. Người thủ thư có thể thực hiện một trong hai thao tác như sau:
- Chọn một cặp giá sách liên tiếp nhau, lấy đi một quyển sách ở cả hai giá sách (lưu ý, nếu giá sách thứ ~i~ hết sách, thì hai giá sách ~i - 1~ và ~i + 1~ cũng không phải cặp giá sách liên tiếp thỏa mãn). Số lần được thực hiện thao tác này là không giới hạn.
- Chọn một cặp giá sách liên tiếp nhau, và hoán đổi số sách của hai giá sách đó. Thao tác này được thực hiện tối đa một lần, và nếu thực hiện, chỉ được thực hiện ngay trước khi thực hiện thao tác ~1~ nói trên.
Yêu cầu: Xác định sau hai thao tác trên, có thể đạt trạng thái với tất cả giá sách đều không còn quyển sách nào hay không.
INPUT
Dòng đầu tiên chứa số nguyên dương ~t~ (~1 \le t \le 10^4~) là số test.
Dòng đầu tiên của mỗi bộ test gồm số nguyên dương ~n~ (~1 \le n \le 2 \times 10^5~) mô tả số giá sách.
Dòng thứ hai của mỗi bộ test gồm ~n~ số nguyên không âm ~a_i~ (~0 \le a_i \le 10^9~) mô tả số sách của từng giá sách.
Dữ liệu đảm bảo tổng ~n~ qua mọi test không vượt quá ~2 \times 10^5~.
OUTPUT
Với mỗi bộ test, in ra YES hoặc NO tương ứng với có thể hay không thể đạt trạng thái nói trên.
SAMPLE INPUT
2
4
1 1 2 2
4
1 2 1 2
SAMPLE OUTPUT
YES
YES
SUBTASKS
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~20~ | ~t, n \le 20~. |
| 2 | ~30~ | ~t, n \le 200~. |
| 3 | ~50~ | Không có ràng buộc gì thêm. |
Bình luận