Points:
1100
Time limit:
1.0s
Memory limit:
512M
Input:
stdin
Output:
stdout
Given an array of \(n\) integers, your task is to find for each array position the nearest position to its left having a smaller value.
Input
- The first input line has an integer \(n\): the size of the array.
- The second line has \(n\) integers \(x_1,x_2,\ldots,x_n\): the array values.
Output
- Print \(n\) integers: for each array position the nearest position with a smaller value. If there is no such position, print \(0\).
Constraints
- \(1 \le n \le 2 \cdot 10^5\)
- \(1 \le x_i \le 10^9\)
Example
Sample input
8
2 5 1 4 8 3 2 5
Sample output
0 1 0 3 4 3 3 7
Comments
cho mình hỏi là mấy bro gửi code này có bị ban ko hay là những người chép code mới bị ban?
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