Góc nhìn quan trọng

Đề bài

Mô tả

Một triển lãm gồm n chồng khối lập phương xếp cạnh nhau, chồng thứ i gồm ai khối chồng lên nhau bắt đầu từ mặt sàn. Chiều cao tối đa của triển lãm là m, vì vậy aim với mọi i.

Có hai camera quan sát:

  • Một camera trên trần nhà nhìn từ trên xuống (top view): mỗi cột (chồng) hiện ra nếu nó chứa ít nhất một khối.
  • Một camera ở tường phải nhìn từ bên (side view): mỗi tầng h từ 1 đến chiều cao lớn nhất hiện ra nếu có ít nhất một khối nằm ở tầng đó (tại bất kỳ cột nào).

Bạn muốn gỡ bỏ càng nhiều khối càng tốt, sao cho hình ảnh thu được từ cả hai camera không thay đổi.

Lưu ý rằng trong triển lãm không có trọng lực: sau khi gỡ bỏ một số khối, các khối còn lại không cần phải nối liền với sàn, không bị rơi xuống và bạn cũng không được phép di chuyển khối bằng tay.

Hãy tính số khối lớn nhất có thể gỡ bỏ.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm — số chồng và chiều cao triển lãm.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an — số khối ban đầu ở mỗi chồng.

Dữ liệu ra

In ra một số nguyên — số khối lớn nhất có thể gỡ bỏ.

Ràng buộc

  • 1n100000
  • 1m109
  • 1aim

Ví dụ

Input Output Giải thích
5 6
3 3 3 3 3
10 Top view yêu cầu mỗi cột có ít nhất một khối; side view yêu cầu các tầng 1,2,3 đều xuất hiện. Có thể chỉ giữ lại 5 khối (mỗi cột một khối, ba khối trong số đó nằm ở các tầng 1,2,3), gỡ 155=10 khối.
3 5
1 2 4
3 Phải giữ 4 khối: mỗi cột một khối ở các tầng 1,2,3, cộng thêm một khối ở tầng 4 của cột cuối. Gỡ 74=3 khối.
3 3
3 1 1
1 Sắp xếp a tăng dần thành [1,1,3]: cột cao nhất buộc phải có khối ở tầng 3, hai cột thấp chỉ cần mỗi cột một khối để giữ top view.
1 1000
548
0 Chỉ có một cột, mọi khối đều cần thiết để giữ side view ở các tầng 1,,548.

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