Minimalist Forum Reader
Bài 4 khó nhằn thế, ko có ý tưởng gì cả
yBBewst.gif


via theNEXTvoz for iPhone
ơ đọc đề ko kĩ à, cứ tưởng là phải split thành các sub strings
Reactions: aNotHeRNo0b
ơ đọc đề ko kĩ à, cứ tưởng là phải split thành các sub strings
đề nó khó hiểu quá bác ạ
đề nó khó hiểu quá bác ạ
Đề đúng như cứt, đọc kĩ lại mãi mới hiểu, nếu chia 2 hoặc ko chia thì còn ko khó bằng bài 3 nữa :beat_brick:
Cứ đi cái DP là xong cmnr, đúng là hại não.
Bài 4 build prefix sum rồi gọi recursion chia left, right thôi các anh.
Cơ mà bài 3 làm sao vậy các anh. Đề dễ hiểu mà nghĩ mãi không ra
=((
View attachment 3505615
:( lâu không làm xuống quá, dạo này em không đấm daily nữa xuống hẳn. Đi làm thì vibecode, đúng là đao không mài thì chỉ có cùn đi chứ không sắc nổi
Q2 thì cái product chỉ cần dùng 1 cái boundary là 10^14 thôi, fen ăn nhiều bug thế haha
Q3 dễ thế mà mình cũng ăn bug vl =((
Bài 4 build prefix sum rồi gọi recursion chia left, right thôi các anh.
Cơ mà bài 3 làm sao vậy các anh. Đề dễ hiểu mà nghĩ mãi không ra
=((
Q3 thì có vài trường hợp
Trường hợp 0 ops thì sorted == ban đầu, -1 thì n == 2 mà sorted ko bằng ban đầu.
Trường hợp 1 ops thì chỉ cần min nằm ở vị trí 0 hoặc max ở vị trí cuối, lúc này chỉ cần chọn cái sub array còn lại để sort.
Trường hợp 2 ops thì cần 1 sort để đưa min về vị trí 0 hoặc max ở vị trí cuối. Xong dùng thêm 1 ops ở trường hợp 1 để correct.

Có tí edge case là thằng max nó nằm ở đầu và min ở cuối, vì ko thể dùng trường hợp 2 ops ở case này nên phải cần 1 ops để đưa max hoặc min vô giữa, sau mới dùng 2 ops nên tổng sẽ là 3 ops.
Còn nếu max nằm đầu và min ở cuối mà ở giữa có element max hoặc min thì có thể đưa thằng giữa về đầu hoặc cuối, quy về trường hợp dùng 2 ops.
Reactions: Vhnguyen