trang chủ / bài tập / walkrain

Đi bộ dưới mưa

Đề bài

Mô tả

n viên gạch xếp thành một hàng, đánh số từ 1 đến n. Một người muốn đi từ viên gạch số 1 đến viên gạch số n. Khi đang đứng ở viên gạch số i, người đó có thể bước sang viên gạch số i+1 hoặc nhảy sang viên gạch số i+2 (nếu các viên gạch đó tồn tại).

Trời bắt đầu mưa. Viên gạch thứ i sẽ bị phá hủy sau ai ngày mưa: đến hết ngày thứ ai nó vẫn còn nguyên, nhưng sang ngày thứ ai+1 thì nó đã bị phá hủy. Không được phép đứng lên viên gạch đã bị phá hủy.

Chuyến đi được coi là thực hiện được trong ngày nào đó nếu viên gạch số 1 và viên gạch số n đều còn nguyên, và có thể đi từ viên gạch số 1 tới viên gạch số n chỉ đi qua các viên gạch chưa bị phá hủy (bằng các bước +1 hoặc +2).

Hãy tính số ngày lớn nhất mà chuyến đi vẫn còn thực hiện được (tức là chuyến đi thực hiện được trong tất cả các ngày từ ngày 1 đến ngày đó).

Dữ liệu vào

  • Dòng đầu chứa số nguyên n là số viên gạch.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an, trong đó ai là số ngày sau đó viên gạch thứ i bị phá hủy.

Dữ liệu ra

In ra một số nguyên duy nhất là số ngày lớn nhất mà chuyến đi từ viên gạch số 1 tới viên gạch số n vẫn còn thực hiện được.

Ràng buộc

  • 1n103
  • 1ai103

Ví dụ

Input Output Giải thích
4
10 3 5 10
5 Viên gạch số 2 bị phá hủy sau ngày thứ 3, khi đó chỉ còn đường 134. Sau ngày thứ 5, hai viên gạch 23 đều hỏng tạo thành khoảng trống rộng 2 nên không thể nhảy qua.
5
10 2 8 3 5
5 Đường 135 dùng được đến hết ngày thứ 5. Sang ngày thứ 6 viên gạch cuối bị phá hủy nên chuyến đi bất khả thi. ]]>

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