Thang máy khách sạn

Đề bài

Mô tả

Một thang máy đặc biệt phục vụ một toà nhà có các tầng được đánh số từ 0 đến s. Tại thời điểm 0, thang máy đang ở tầng cao nhất (tầng s). Thang máy chỉ có thể đi xuống (không bao giờ đi lên), mỗi giây di chuyển đúng 1 tầng và có sức chứa không giới hạn. Việc đón khách diễn ra tức thì.

Có n hành khách. Hành khách thứ i sẽ xuất hiện tại tầng fi vào thời điểm ti giây — thang máy chỉ có thể đón hành khách này khi đang ở tầng fi tại một thời điểm không sớm hơn ti. Thang máy được phép dừng (chờ) ở bất kỳ tầng nào bao lâu tuỳ ý.

Hãy tính thời gian tối thiểu để thang máy đưa toàn bộ hành khách xuống tầng 0.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên n và s.
  • n dòng tiếp theo, dòng thứ i chứa hai số nguyên fi và ti — tầng và thời điểm xuất hiện của hành khách i.

Dữ liệu ra

In ra một số nguyên duy nhất — thời gian tối thiểu cần thiết.

Ràng buộc

  • 1≤n≤100
  • 1≤s≤1000
  • 1≤fi≤s
  • 1≤ti≤1000

Ví dụ

Input Output Giải thích
3 7
2 1
3 8
5 2
11 Thang máy đi từ tầng 7 xuống tầng 5 (2 giây, đón hành khách 3), xuống tầng 3 (thêm 2 giây), chờ 4 giây cho hành khách 2 xuất hiện rồi đón, xuống tầng 2 (1 giây, đón hành khách 1), cuối cùng xuống tầng 0 (2 giây). Tổng cộng 2+2+4+1+2=11 giây.
5 10
2 77
3 33
8 21
9 12
10 64
79 Hành khách 1 ở tầng 2 xuất hiện ở thời điểm 77; thang máy có thể tới tầng 2 trong 10−2=8 giây nhưng phải chờ tới thời điểm 77 mới đón được, rồi mất thêm 2 giây để xuống tầng 0, tổng 77+2=79. Đây là ràng buộc chặt nhất nên đáp án bằng 79.

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