Fedor và phiếu giảm giá

Đề bài

Mô tả

Fedor có n phiếu giảm giá. Phiếu thứ i có thể sử dụng cho những sản phẩm có mã (số nguyên) nằm trong đoạn [li,ri].

Fedor muốn mang theo đúng k phiếu. Hãy chọn k phiếu sao cho số lượng sản phẩm x có thể dùng đồng thời tất cả k phiếu đã chọn là lớn nhất. Nói cách khác, cần chọn k phiếu sao cho độ dài (số nguyên) của giao các đoạn tương ứng là lớn nhất; nếu giao rỗng thì kết quả bằng 0.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên n và k (1≤k≤n≤3·105).
  • n dòng tiếp theo, mỗi dòng chứa hai số nguyên li,ri (−109≤li≤ri≤109) — mô tả phiếu thứ i. Các phiếu có thể trùng nhau.

Dữ liệu ra

  • Dòng đầu: một số nguyên — số lượng sản phẩm lớn nhất mà tất cả k phiếu đã chọn đều dùng được.
  • Dòng thứ hai: k số nguyên phân biệt p1,p2,…,pk (1≤pi≤n) — chỉ số của các phiếu Fedor chọn.

Nếu có nhiều đáp án, in ra bất kỳ đáp án hợp lệ nào.

Ví dụ

Input Output Giải thích
3 2
1 12
15 20
25 30
0
1 2
Bất kỳ hai phiếu nào cũng có giao rỗng, nên đáp án là 0; in ra hai chỉ số tuỳ ý.
4 2
1 100
40 70
120 130
125 180
31
1 2
Chọn phiếu 1 và 2: giao [1,100]∩[40,70]=[40,70] có 31 số nguyên.
5 2
1 10
5 15
14 50
30 70
99 100
21
3 4
Chọn phiếu 3 và 4: giao [14,50]∩[30,70]=[30,50] có 21 số nguyên.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0