Gửi bài giải
Điểm:
0,10 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Khánh có mảng ~a~ gồm ~n~ số nguyên ~a_1, a_2, \dots, a_n~. Khánh có thể thực hiện thao tác sau với bất kỳ số lần nào:
- Chọn ~i~, ~j~ ~(i \ne j)~ sao cho ~|a_i − a_j| \le 1~
- Xóa phần tử nhỏ hơn trong ~2~ số (~a_i~ hoặc ~a_j~). Nếu ~2~ số bằng nhau, có thể xóa bất kỳ số nào.
Bạn hãy giúp Khánh xác định xem có thể thu được mảng ~a~ chỉ còn ~1~ phần tử sau một số lần thực hiện thao tác trên hay không?
Input
- Dòng đầu tiên chứa số nguyên ~n~ ~(1 \le n \le 50)~
- Dòng tiếp theo chứa ~n~ phần tử ~a_1, a_2, \dots, a_n~ ~(1 \le a_i \le 150)~
Output
- In ra
YES
nếu có thể hoặcNO
nếu không thể.
Sample Input
3
1 2 2
Sample Output
YES
Subtask
- ~40\%~ số test có ~1 \le n \le 5~.
- ~60\%~ số test còn lại không có điều kiện gì thêm.
Giải thích
- Đầu tiên chọn ~i = 1~, ~j = 3~, ta có ~|a_1 - a_3| \le 1~, số nhỏ hơn là ~a_1~. Dãy sau khi xóa ~a_1~ là ~[2, 2]~.
- Tiếp tục chọn ~i = 1~, ~j = 2~. Dãy cuối cùng là ~[2]~.
Bình luận
.
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.