Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
AVLBIT - Dãy cấp số cộng |
Một dãy cấp số cộng là một dãy số mà 2 cặp phần tử liên tiếp bất kỳ có hiệu bằng nhau và khác 0. Trường hợp dãy số chỉ gồm 2 số khác nhau vẫn tính là một dãy cấp số cộng
Ví dụ: 2, 5 là dãy cấp số cộng.
8, 3 là dãy cấp số cộng.
1, 2, 3, 4, 5 là dãy cấp số cộng.
11, 8, 5, 2 là dãy cấp số cộng.
1, 2, 4, 5, 7 không phải là dãy cấp số cộng.
Cho một dãy số A gồm N số nguyên dương. Cho Q truy vấn dạng (x, y). Mỗi truy vấn yêu cầu kiểm tra xem đoạn từ x tới y có phải là hoán vị của một dãy cấp số cộng không.
Dữ liệu vào
Dòng đầu chứa 2 số nguyên N, Q.
Số thứ i trong N số ở dòng thứ 2 là Ai.
Dòng thứ i trong Q dòng tiếp theo chứa 2 số nguyên x, y mô tả truy vấn thứ i.
Dữ liệu ra
Gồm Q dòng.
Dòng thứ i trong Q dòng sẽ trả lời cho truy vấn thứ i.
In ra YES nếu đoạn từ x tới y là hoán vị của một dãy cấp số cộng. Ngược lại thì ghi ra NO.
Ràng buộc
11 test có N, Q <= 1000 .
10 test có N <= 1000, Q <= 10^6 .
10 test có N <= 10^5, Q <= 10^5.
Ai <= 10^9
Ví dụ
Dữ liệu vào |
Dữ liệu ra |
5 2 1 3 2 5 4 1 5 2 4 |
YES NO |
Được gửi lên bởi: | CoderPTNK1114 |
Ngày: | 2013-07-12 |
Thời gian chạy: | 0.200s-0.600s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | Tất cả ngoại trừ: ASM64 GOSU PERL6 PYPY RUST SED |
Nguồn bài: | Sưu tầm |
hide comments
|
|||||
2013-07-19 05:49:20 CoderPTNK1114
Dạ bài này em đặt tên theo cảm hứng thôi ạ :3 @Tôm: Bạn nên đọc kỹ lại đề. |
|||||
2013-07-18 20:06:35 Nguyên
Không hiểu sao bài này lại tên là AVLBIT? Chừng nào có thêm thao tác cập nhật, reverse 1 đoạn thì mới cần dùng CTDL. |
|||||
2013-07-18 05:38:30 [cvp]
Bài này chỉ là cải tiến thêm của TBIKE không đến nỗi phải dùng cây cối gì cả. Mình cài RMQ nhưng không hiểu sai đâu nên xịt cả TBIKE và bài này. |
|||||
2013-07-18 04:30:35 fbc
Có cách không BIT cũng chẳng AVL hay RB-tree gì cả :)) |