C++ bài 12.C9: Thay đổi đẹp mắt
Có \(N\) ô vuông được sắp xếp theo hàng ngang từ trái sang phải. Chiều cao của ô vuông thứ \(i\) tính từ trái sang phải là \(H_i\).
Đối với mỗi ô vuông, bạn sẽ thực hiện một trong các thao tác sau một lần:
- Giảm chiều cao của ô vuông đi \(1\).
- Không làm gì cả.
Xác định xem có thể thực hiện các thao tác sao cho chiều cao của các ô vuông không giảm dần từ trái sang phải hay không.
Ràng buộc:
- Tất cả giá trị đầu vào là số nguyên.
- \(1 \leq N \leq 10^5\)
- \(1 \leq H_i \leq 10^9\)
ĐỊNH DẠNG ĐẦU VÀO
Đầu vào được cung cấp từ đầu vào chuẩn như sau:
N
H_1 H_2 ... H_N
ĐỊNH DẠNG ĐẦU RA
Nếu có thể thực hiện các thao tác sao cho chiều cao của các ô vuông không giảm dần từ trái sang phải, in ra "Yes"; ngược lại, in ra "No".
Ví dụ:
Input
5
1 2 1 1 3
Output
Yes
Bạn có thể đạt được mục tiêu bằng cách giảm chiều cao của ô vuông thứ hai từ trái sang phải đi \(1\).
Input
4
1 3 2 1
Output
No
Giải thích ví dụ mẫu:
Ví dụ 1:
- Có thể giảm chiều cao của ô vuông thứ hai từ trái sang phải đi 1 đơn vị, để chiều cao không giảm dần từ trái sang phải.
Ví dụ 2:
- Không thể giảm chiều cao của các ô vuông để đảm bảo chiều cao không giảm dần từ trái sang phải.
- Không thể giảm chiều cao của các ô vuông để đảm bảo chiều cao không giảm dần từ trái sang phải.
Lời giải bài tập này: Tại đây
Group giải đáp thắc mắc: Lập trình 24h
Fanpage CLB: CLB lập trình Full House- Việt Nam
Youtube: CLB Lập Trình Full House
Comments