Phó GOAT
Senior Member
Khó quá thì cop sol đi bácmấy bài về mono stack khó quá, toàn ko làm được![]()
Khó quá thì cop sol đi bácmấy bài về mono stack khó quá, toàn ko làm được![]()
Thì chả đọc sol chứ sao nữa h bácKhó quá thì cop sol đi bác![]()
Ý là gặp mấy bài mono stack là thấy khó vcl, ko biết improve kiểu gì h 
class Solution {
public int maxWidthRamp(int[] nums) {
int n = nums.length;
int[] rightMax = new int[n];
int r =0, l = 0;
int res = 0;
rightMax[n-1] = nums[n-1];
for(int i = n-2;i>=0;i--){
rightMax[i] = Math.max(nums[i],rightMax[i+1]);
}
while(l<=r && r<n){
if(nums[l]<=rightMax[r]){
res = Math.max(r-l,res);
r++;
}
else
l++;
}
return res;
}
}
class Solution {
public:
int maxWidthRamp(std::vector<int>& nums) {
int m = *max_element(nums.begin(), nums.end());
vector<int> pre(m + 1, 1e5);
int n = nums.size();
for (int i = 0; i < n; i++)
pre[nums[i]] = min(pre[nums[i]], i);
for (int i = 1; i <= m; i++)
pre[i] = min(pre[i], pre[i - 1]);
int res = 0;
for (int i = 0; i < n; i++)
res = max(res, i - pre[nums[i]]);
return res;
}
};
Nãy e làm treemap bị tle :v xong coi sol luônThì chả đọc sol chứ sao nữa h bácÝ là gặp mấy bài mono stack là thấy khó vcl, ko biết improve kiểu gì h
![]()
e tiếp cận từ 2 hướng 2 pointer với mono stack đều oke cả nhưng cũng ko làm ra dc đi cop solNãy e làm treemap bị tle :v xong coi sol luôn
làm mảng như trư này cho dễ hiểu, code 2 năm trước mà nhìn cái hiểu luônCSS:class Solution { public: int maxWidthRamp(std::vector<int>& nums) { int m = *max_element(nums.begin(), nums.end()); vector<int> pre(m + 1, 1e5); int n = nums.size(); for (int i = 0; i < n; i++) pre[nums[i]] = min(pre[nums[i]], i); for (int i = 1; i <= m; i++) pre[i] = min(pre[i], pre[i - 1]); int res = 0; for (int i = 0; i < n; i++) res = max(res, i - pre[nums[i]]); return res; } };
Thầy cop sol. Refund khóa học thôi @Cố Trường Cae tiếp cận từ 2 hướng 2 pointer với mono stack đều oke cả nhưng cũng ko làm ra dc đi cop sol
giới hạn dna r![]()

bác đăng cái ảnh lên thớt khác có người tin thật inbox e hỏi coupon đấyThầy cop sol. Refund khóa học thôi @Cố Trường Ca![]()
mono stack toàn bài hard mà, thôi ko sao, cùng lắm thì isekaie tiếp cận từ 2 hướng 2 pointer với mono stack đều oke cả nhưng cũng ko làm ra dc đi cop sol
giới hạn dna r![]()

class Solution:
def maxWidthRamp(self, nums: List[int]) -> int:
stack_indexes = []
for i, a in enumerate(nums):
if not len(stack_indexes) or nums[i] < nums[stack_indexes[-1]]:
stack_indexes.append(i)
res = 0
for i in range(len(nums)-1, -1, -1):
while len(stack_indexes) and nums[stack_indexes[-1]] <= nums[i]:
res = max(res, i - stack_indexes.pop())
return res
Để e kiếm post thớt đó xóa đibác đăng cái ảnh lên thớt khác có người tin thật inbox e hỏi coupon đấykhổ quá mà.![]()

anh em làm đc mấy bài mono stack cho xin tý kinh nghiệm với, chứ cái dạng này với em khoai quá, đọc ko biết apply mono stack kiểu gì luônmono stack toàn bài hard mà, thôi ko sao, cùng lắm thì isekai![]()

mấy bài so sánh cặp phần tử, hay tìm min/max tại 1 phạm vi trong mảng, thì nó sẽ hay dùng monotonic stackanh em làm đc mấy bài mono stack cho xin tý kinh nghiệm với, chứ cái dạng này với em khoai quá, đọc ko biết apply mono stack kiểu gì luôn![]()

tks bác, để em note lại càymấy bài so sánh cặp phần tử, hay tìm min/max tại 1 phạm vi trong mảng, thì nó sẽ hay dùng monotonic stack
Fency làm mấy bài kiểu Next Greater Element, Trapping rain là hiểu. Làm 1 lần chưa hiểu thì làm nhiều lần, các bài cùng dạng luôn. Làm nhiều lần vẫn chưa hiểu thì chắc là DNA issue rồi, không cần phải cố nữa![]()

Vãi, cơ hội kinh doanh đây chứ đâu, tối ngồi record lại rồi post lên đây, có đội seeding hùng hậu rồi còn gìbác đăng cái ảnh lên thớt khác có người tin thật inbox e hỏi coupon đấykhổ quá mà.![]()

Làm cũng tương đối nên lúc đầu đọc đề thì em liên tưởng ngay đến bài tìm số gần nhất bên trái sao cho nhỏ hơn số hiện tại rồi, xong nháp thử là nếu dùng stack thì mình sẽ có thể làm được gì rồi cuối cùng hình thành nên đáp án thôi bác.anh em làm đc mấy bài mono stack cho xin tý kinh nghiệm với, chứ cái dạng này với em khoai quá, đọc ko biết apply mono stack kiểu gì luôn![]()
Cái mono stack này trước h em cũng chưa làm nhiều, nch tìm đọc qua thì cũng chẳng có trick tips gì, cố mà làm cho tay to ra thì dễ nhận ra hơn thôiLàm cũng tương đối nên lúc đầu đọc đề thì em liên tưởng ngay đến bài tìm số gần nhất bên trái sao cho nhỏ hơn số hiện tại rồi, xong nháp thử là nếu dùng stack thì mình sẽ có thể làm được gì rồi cuối cùng hình thành nên đáp án thôi bác.
