Gửi bài giải

Điểm: 0,20 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho dãy B gồm các số nguyên ~\\ B[1], B[2], B[3], \ldots, B[N] \\~ được gọi là dãy lỏm nếu tồn tại chỉ số ~\\ i \ (1 < i < N) \\~ sao cho ~\\ B[1] > B[2] > \ldots > B[i] < B[i+1] < \ldots < B[N] \\~.
Ví dụ:

  • Dãy ~\\ B = \{10, 5, 4, 2, 1, 4, 6, 8, 12\} \\~ được gọi là dãy lỏm.
  • Dãy ~\\ B = \{10, 5, 7, 2, 1, 4, 6, 8, 12\} \\~ không được gọi là dãy lỏm.
Yêu cầu:

Cho trước dãy ~\\ A \\~ gồm ~\\ N \\~ số nguyên dương ~\\ A[1], A[2], \ldots, A[N] \\~. Hãy lập trình xóa đi ít phần tử nhất để dãy còn lại là dãy lỏm có độ dài lớn nhất.

Dữ liệu vào:

Từ tệp BAI4.INP

  • Dòng đầu là số tự nhiên ~\\ N \ (2 \leq N \leq 5000) \\~.
  • Dòng tiếp theo là ~\\ N \\~ số nguyên dương của dãy số, mỗi số cách nhau tối thiểu một khoảng trắng.
Dữ liệu ra:

Ghi ra tệp BAI4.OUT một số nguyên dương là kết quả của bài toán (ghi số 0 nếu không tìm được).

Ví dụ:
BAI4.INP BAI4.OUT Giải thích
10 6 Xóa các phần tử: 1, 2, 3, 5
1 2 3 4 2 5 1 2 3 4
10 0
7 6 5 4 3 2 1

Bình luận

Hãy đọc nội quy trước khi bình luận.


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