USACO 2020 - Help Yourself
Xem PDFBessie được cho \(N\) đoạn thẳng (\(1\le N\le 10^5\)) trên một trục số một chiều. Đoạn thẳng thứ \(i\) chứa mọi số thực \(x\) thỏa mãn \(l_i\le x\le r_i\).
Định nghĩa hợp của một tập các đoạn thẳng là tập hợp mọi \(x\) nằm trong ít nhất một đoạn thẳng. Định nghĩa độ phức tạp của một tập các đoạn thẳng là số miền liên thông được biểu diễn trong hợp của chúng.
Bessie muốn tính tổng độ phức tạp trên tất cả \(2^N\) tập con của tập \(N\) đoạn thẳng đã cho, lấy phần dư theo \(10^9+7\).
Thông thường, nhiệm vụ của bạn là giúp Bessie. Nhưng lần này, bạn chính là Bessie và không có ai giúp bạn. Hãy tự giúp mình!
Phân nhóm
- Các test 2-3 thỏa mãn \(N\le 16\).
- Các test 4-7 thỏa mãn \(N\le 1000\).
- Các test 8-12 không có ràng buộc bổ sung.
Dữ liệu vào
Dòng đầu tiên chứa \(N\).
Mỗi dòng trong \(N\) dòng tiếp theo chứa hai số nguyên \(l_i\) và \(r_i\). Dữ liệu bảo đảm \(l_i<r_i\) và tất cả các giá trị \(l_i,r_i\) là những số nguyên đôi một phân biệt thuộc đoạn \(1\ldots 2N\).
Dữ liệu ra
In đáp án lấy phần dư theo \(10^9+7\).
Ví dụ
Ví dụ 1
Input
3
1 6
2 3
4 5
Output
8
Giải thích
Độ phức tạp của mỗi tập con khác rỗng được viết dưới đây.
Đáp án là \(1+1+1+1+1+2+1=8\).
Nguồn
USACO 2020 February Contest, Gold - Help Yourself: https://usaco.org/index.php?page=viewproblem2&cpid=1018
Tác giả: Benjamin Qi.
Kỳ thi:
- USACO 2020 - Tháng 2 - Hạng Vàng (1 Tháng 2., 2020)
Bình luận