Điểm:
1100
Thời gian:
1.0s
Bộ nhớ:
512M
Input:
bàn phím
Output:
màn hình
Cho một mảng gồm \(n\) số nguyên, nhiệm vụ của bạn là với mỗi vị trí của mảng, tìm vị trí gần nhất bên trái của nó mà có giá trị nhỏ hơn.
Input
- Dòng đầu vào đầu tiên có một số nguyên \(n\): kích thước của mảng.
- Dòng thứ hai có n số nguyên \(x_1,x_2,\ldots,x_n\): các giá trị của mảng.
Output
- In \(n\) số nguyên: vị trí gần nhất nhỏ hơn cho mỗi vị trí trong mảng. Nếu không có, in \(0\).
Constraints
- \(1 \leq n \leq 2 \cdot 10 ^ 5\)
- \(1 \leq x_i \leq 10 ^ 9\)
Example
Sample input
8
2 5 1 4 8 3 2 5
Sample output
0 1 0 3 4 3 3 7
Bình luận
def find_nearest_smaller_left(n, arr):
stack = []
result = [0] * n
Đọc input
n = int(input().strip())
arr = list(map(int, input().strip().split()))
Tìm vị trí gần nhất bên trái có giá trị nhỏ hơn
result = find_nearest_smaller_left(n, arr)
print(" ".join(map(str, result)))
python 3 100% AC
solution theo stack cho ae tham khảo