Loại Bỏ Một Phần Tử
Nộp bài giải
Điểm:
5,00 (OI)
Giới hạn thời gian:
2.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Dạng bài
Ngôn ngữ cho phép
Ada, Algol, Assembly, Awk, C, C#, C++, D, Dart, Forth, Fortran, Go, Groovy, Java, Javascript, Kotlin, Lisp, Lua, Nim, ObjC, Pascal, Perl, PHP, Pike, Python, Racket, Ruby, Rust, Scheme, Scratch, Sed, TCL, Typescript, V, Zig
Cho một hoán vị độ dài . Hãy loại bỏ đúng một phần tử khỏi hoán vị sao cho số kỷ lục (record) của dãy còn lại lớn nhất có thể.
Trong dãy , phần tử được gọi là một kỷ lục nếu với mọi chỉ số thoả , ta có (tức lớn hơn mọi phần tử đứng trước nó). Theo định nghĩa, luôn là một kỷ lục.
Nếu có nhiều phần tử khi loại bỏ đều cho số kỷ lục lớn nhất, hãy in ra phần tử có giá trị nhỏ nhất.
Dữ liệu vào
- Dòng đầu chứa số nguyên — độ dài của hoán vị.
- Dòng thứ hai chứa số nguyên phân biệt — hoán vị.
Dữ liệu ra
Một số nguyên duy nhất — phần tử cần loại bỏ.
Ràng buộc
- và các đôi một phân biệt.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 1 1 |
1 | Chỉ có một phần tử để loại bỏ. |
| 5 5 1 2 3 4 |
5 | Khi loại bỏ , dãy còn lại có kỷ lục. Các cách loại bỏ khác đều cho ít kỷ lục hơn. |
| 5 2 3 4 1 5 |
1 | Loại bỏ cho dãy với kỷ lục — nhiều nhất có thể. |
Bình luận