Mảng và mex

Đề bài

Mô tả

Cho hai số nguyên dương nm. Bạn cần xây dựng một mảng a gồm n số nguyên không âm sao cho giá trị nhỏ nhất trong số m giá trị mex của các đoạn con cho trước là lớn nhất có thể.

Mỗi đoạn con được mô tả bởi hai chỉ số liri và bao gồm các phần tử ali,ali+1,,ari.

Hàm mex của một tập S là số nguyên không âm nhỏ nhất không xuất hiện trong S.

Hãy in ra giá trị tối đa của giá trị mex nhỏ nhất và mảng a đạt được giá trị đó.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm.
  • m dòng tiếp theo, dòng thứ i chứa hai số nguyên liri mô tả đoạn con thứ i.

Dữ liệu ra

  • Dòng đầu in ra giá trị tối đa của giá trị mex nhỏ nhất trong m đoạn con.
  • Dòng thứ hai in ra n số nguyên là các phần tử của mảng a. Các phần tử phải nằm trong đoạn [0,109].

Nếu có nhiều mảng thoả mãn, in ra bất kỳ mảng nào.

Ràng buộc

  • 1n,m105
  • 1lirin

Ví dụ

Input Output Giải thích
5 3
1 3
2 5
4 5
2
0 1 0 1 0
mex của đoạn [1,3]2, mex của đoạn [2,5]2, mex của đoạn [4,5]2. Giá trị nhỏ nhất là 2 — không thể đạt lớn hơn vì đoạn [4,5] chỉ có 2 phần tử.
4 2
1 4
2 4
3
0 1 2 0
mex của đoạn [1,4] bằng 3, mex của đoạn [2,4] bằng 3. Đoạn ngắn nhất có độ dài 3 nên đáp án không thể vượt quá 3.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0