có thể cho mình xin file word của bạn để mình đọc được kh ạ , mình cảm ơn ạ
@b21dccn809-luongngocyenАй бұрын
lâu rồi sorry mình k còn giữ ấy b
@Zns_07Ай бұрын
anh ơi tại sao khi gặp số vi phạm quy tắc lại phải thay nó vào trong vector ạ
@b21dccn809-luongngocyenАй бұрын
để trả lời được câu hỏi này mình cần trả lời được câu hỏi tại sao người ta lại nghĩ ra cách lấy 1 vector và thêm các giá trị vào vector đó đồng thời đảm bảo thứ tự tăng dần của vector
@b21dccn809-luongngocyenАй бұрын
xét vị trí i ứng với giá trị a[i] của mảng ban đầu , mình mong muốn sẽ biết được độ dài lớn nhất của dãy tăng dần kết thúc bởi giá trị a[i] này , hiển nhiên mình sẽ tìm xem phía trước có dãy nào có kết thúc nhỏ hơn a[i] và có độ dài tốt nhất có thể để đem nối vào a[i] hay không , =>> mình cần có 1 vector ( hoặc có thể dùng Set hoặc Map) nhằm lưu trữ các giá trị riêng biệt và có thể biết được độ dài lớn nhất của dãy có kết thúc là giá trị riêng biệt đó , ví dụ [1,3,5,7,9] như trong video sẽ giúp mình biết được độ dài lớn nhất của dãy có kết thúc là 1 là 1 , kết thúc là 3 là 2 , kết thúc là 5 là 3 ,...
@b21dccn809-luongngocyenАй бұрын
trường hợp giá trị 6 phải thay vào là trường hợp bạn nhắc tới , câu hỏi là chuyện gì xảy ra nếu mình không thay thế số 7 bởi số 6 , vector hiện tại là [1,3,5,7,9] , a[i] đang xét = 6 và mình cần đặt ra câu hỏi tại sao cần chạy vào vector để tìm giá trị đầu tiên lớn hơn 6 ( số 7) và thay 7 thành 6
@b21dccn809-luongngocyenАй бұрын
buộc phải thay 7 bởi 6 như vậy bởi xảy ra tình huống như thế này , giả sử có thêm 1 số phần tử nằm phía sau ( mình mở rộng bài toán để dễ minh họa) , giả sử phần tử đó là a[1000] = 1001 , mình cần tìm trong vector xem dãy nào có kết thúc nhỏ hơn 1001 và có độ dài lớn nhất không , nếu không thay 7 bởi 6 sẽ dẫn tới tình huống giá trị trong vector tuy nhỏ hơn nhưng lại có độ dài lớn hơn ( dãy A có kết thúc là 6 nhưng lại dài hơn dãy có kết thúc là 7 ) , khi này đứng vị trí có a[i] = 1001 mình không thể biết được đâu mới là dãy có kết thúc nhỏ hơn nhưng có độ dài lớn nhất để nối vào ( lúc này buộc check từng giá trị 6 và 7 để so sánh và cập nhật kết quả =>> đi check từng giá trị như thế độ phức tạp nâng lên n^2) , do vậy mình xóa sổ thằng 7 khỏi các giá trị riêng biệt trong vector luôn , bởi 2 dãy tăng dần có cùng độ dài , 1 dãy có kết thúc là 6 và 1 dãy có kết thúc là 7 chẳng tội gì phải giữ thông tin của thằng 7 để làm gì cả, xóa sổ thằng 7 sẽ tránh được tình huống phía trên và luôn đảm bảo cứ tìm ra phần tử đầu tiên nhỏ hơn a[i] thì độ dài dãy kết thúc bởi phần tử đó 100% là độ dài lớn nhất có kết thúc < a[i]
@b21dccn809-luongngocyenАй бұрын
tui xin 1 đăng kí nhe hiuhiu
@tannek77232 ай бұрын
xem 1 lần hiểu luôn
@lamquangnhathuy4 ай бұрын
vậy mình tìm những xâu con có độ dài là 1 và độ dài là 2 đối xứng, lưu vị trí vào mảng rồi sau đó từ những vị trí đó tỏa ra 2 đầu thì sao ad
@b21dccn809-luongngocyen4 ай бұрын
@@lamquangnhathuy bạn mô tả rõ hơn được không , mình chưa hình dung được
@Hadesorka3085 ай бұрын
hay quá anh ơi +1 đk
@minhninhhihi5 ай бұрын
hay v ma ít người biết vậy ta
@cattuonggpham95485 ай бұрын
<3
@xuanhuy92835 ай бұрын
dễ hiểu nhưng nói hơi nhanh ạ 😅😅
@b21dccn809-luongngocyen5 ай бұрын
@@xuanhuy9283 hehe để lại mình xin 1 subribe nha hehe
@judgementmayuri93505 ай бұрын
hay quá a ơi, e D23 vào học cũm hiểu ghê ạ :>
@b21dccn809-luongngocyen5 ай бұрын
cho anh xin 1 sub nha hihi
@blasterskywarp63535 ай бұрын
video hay quá ạ :)
@redevil0795 ай бұрын
nói ko hiểu gì hết, thật
@b21dccn809-luongngocyen5 ай бұрын
@@redevil079 bạn tham khảo các nguồn khác xem , khả năng của mình chỉ tới đó thôi
@LongTran-ir6qr5 ай бұрын
#include <bits/stdc++.h> #define ll long long #define MOD 1000000007 using namespace std; ll n ,k; vector<ll> dp(1000007); void ans(){ cin>>n>>k; dp[0]=1; for(ll i = 1 ;i <=n ; i++){ for(ll j = 1 ; j <=k ; j++){ if(i>=j){ dp[i] += dp[i-j]; dp[i] %=MOD; } } } cout<<dp[n]<<endl; } int main() { ans(); } admin ơi code của em như này ổn không ạ, em cảm ơn
@buiquanghung43916 ай бұрын
tìm số fibonacci thứ N, nhân ma trận time ~~
@b21dccn809-luongngocyen6 ай бұрын
bạn nói chi tiết hơn đi bạn
@buiquanghung43916 ай бұрын
@@b21dccn809-luongngocyen cái này bạn có thể tự tìm hiểu về nhân ma trận, bài toán tìm số fibo thứ N với N ~ 1e18 sẽ được giới thiệu đầu tiên khi học
@b21dccn809-luongngocyen6 ай бұрын
Dùng GROUP BY để xem 1 người có bao nhiêu chữ số trong số điện thoại của họ, chứ không phải 1 người có bao nhiêu sđt nha mn , mình run quá nên bị nhầm =(((
@b21dccn809-luongngocyen6 ай бұрын
Phần Transaction mình phải bọc Transaction trong Try-catch để khi Exception xảy ra => chứng tỏ giao tác thất bại , mình bị thiếu =(((
@hoangbui83837 ай бұрын
=))) quả nhạc nền thật là ...
@DaThuFlorida8 ай бұрын
nếu nó kêu mỗi mệnh giá dùng 1 lần thì sao ah
@b21dccn809-luongngocyen8 ай бұрын
nếu thế thì quy về bài toán dãy con có tổng bằng S rồi bạn , bạn biến thể 1 tí giờ không phải là tồn tại tổng = Si nữa ( true hoặc false ) mà là số phần tử ít nhất để tổng của chúng bằng Si với Si <= S ( mình đang nói trong ngữ cảnh bài dãy con có tổng = S) ,bạn xem lại video dãy con có tổng = S trên kênh mình có ấy
@b21dccn809-luongngocyen8 ай бұрын
mình quên mất , nếu đề là thế thì phải lọc ra các giá trị phân biệt của mảng đề cho nha
@thonsgo32709 ай бұрын
ủa anh ơi vậy với dãy con giảm dài nhất thì mình sửa như nào
@b21dccn809-luongngocyen9 ай бұрын
em hiểu được cách nó hoạt động thì tự khắc sửa được , thử nhá
@thonsgo32709 ай бұрын
@@b21dccn809-luongngocyen cơ bản là em không tìm được một cái hàm có chức năng ngược lại với hàm lower_bound ấy ạ
@thonsgo32709 ай бұрын
@@b21dccn809-luongngocyen mình thêm thuộc tính greater<>() vào trong hàm low_bound đúng không anh
@DraWoOfficial10 ай бұрын
Nếu thêm một xíu điều kiện đó là chỉ chọn đúng k tờ tiền thì sao bạn?
@b21dccn809-luongngocyen10 ай бұрын
đề bài yêu cầu là tìm số tờ tiền ít nhất rồi thì làm sao thêm được điều kiện chọn đúng K tờ tiền được bạn , bạn mô tả rõ hơn giúp mình được không
@DraWoOfficial7 ай бұрын
@@b21dccn809-luongngocyen Ví dụ đề bài là: đếm số cách đổi một mệnh giá tiền S chỉ sử dụng k tờ tiền
@amchatdanchoi3117 Жыл бұрын
hướng dẫn đổi tiền kiểu 225 và 252 và 522 đều tính là 1 cách đi bạn
@b21dccn809-luongngocyen Жыл бұрын
Đổi tiền như thế thì = bài toán dãy con có tổng = S rồi bạn , bạn hiểu bài dãy con có tổng = S thì bạn sửa 1 chút là được ( sửa biến đánh dấu 0 với 1 thành số cách chọn )
@hoangQuan25 Жыл бұрын
Em tưởng đây là đệ quy quay lui thôi chứ quy hoạch động gì ạ
@b21dccn809-luongngocyen Жыл бұрын
Đệ quy quay lui cũng là quy hoạch động mà em , quy hoạch động có 2 cách tiếp cận 1 là top-down 2 là bottom-up , trong video của anh là 1 trong 2 cách ấy
@BaoTran-pv5kd7 ай бұрын
chả có tý đệ quy cũng chả có tý quay lui nào, xây dựng bảng công thức 100%
@b21dccn809-luongngocyen5 ай бұрын
@@BaoTran-pv5kd bạn nên tìm hiểu thêm về các style code dp nha 🫶🏾
@manhnguyenuc9004 Жыл бұрын
hay wa shop ơi
@ivanfrank9256 Жыл бұрын
*PromoSM*
@quochuyphan5795 Жыл бұрын
Thế bón 4 vào cây thứ 7 thì sao anh
@phqtn231237 ай бұрын
7+4=11>8
@nguyenhoang-gi9td Жыл бұрын
hoàng đã xem
@minhtriluu3752 Жыл бұрын
khá hay, tui vẫn hiểu dc mà
@TiếnHoàngĐức-q7s Жыл бұрын
a làm thêm về digit dp đi a, e kéo cả lò vào xem
@b21dccn809-luongngocyen Жыл бұрын
=))
@b21dccn809-luongngocyen Жыл бұрын
Mấy nữa a tranh thủ làm nha 🥊
@DuongNguyen-np6rk Жыл бұрын
lú luôn 😅
@LamHoang-kn7de Жыл бұрын
vid dễ hiểu nha
@ducdangminh4390 Жыл бұрын
tuyệt quá anh ơi <3
@namdizi1649 Жыл бұрын
Giảng hay vailon
@09_kiet60 Жыл бұрын
Rất quý những người làm những clip dạy học nhiệt huyết như thế này🎉
@keyboard7z622 Жыл бұрын
Hayy!!
@caophi5940 Жыл бұрын
hay phết 🥰 tiện cho e xin link mua cây thước a eii=))
@ThangTrung1101 Жыл бұрын
Video rất đỉnh, anh có thể làm thêm về cách truy vết của các bài quy hoạch động em thấy đó là một vấn đề khá khó đối với một số bài.
@b21dccn809-luongngocyen Жыл бұрын
Qhd ít khi truy vết lắm b , nên mình cũng ít gặp dạng đó
@nvquanghuy2008 Жыл бұрын
Dạ hay quá ạ
@hanguyen-lh8vl Жыл бұрын
Dạy cp ko b ơi
@b21dccn809-luongngocyen Жыл бұрын
Sr mình không bạn ạ , có bài nào hay bạn có thể trao đổi với mình qua fb nhé 🥰
@habaxl1313 Жыл бұрын
có cái mình k hiểu là, ví dụ trg vid là 6 chỉ sao lại chọn 3 và 4 ạ? và tại sao lại k chọn 2 vì 2 đấy vẫn có thể lớn hơn 3 và 4 mà? trg vid có nói là 2 luôn bé hơn nhma mình k rõ cái lý do ấy ạ
@b21dccn809-luongngocyen Жыл бұрын
Bạn để ý trong video mình có nói là các số a[i] luôn DƯƠNG , khi đó dp ở vị trí 4 chắc chắn lớn hơn dp ở vị trí 2, bởi vì dp 4 được tạo từ a4+ max(dp2,dp1), xảy ra 2 trường hợp , 1 là dp2 lớn hơn dp1, khi đó dp4= a4+ dp2, hiển nhiên dp4 chắc chắn lớn hơn dp2
@b21dccn809-luongngocyen Жыл бұрын
Trường hợp còn lại dp4 được tạo thành từ a4+ dp1, điều này chứng tỏ dp2 < dp1( do nhỏ hơn nên mới không được chọn) =>> thằng dp2 sẽ k được tham gia vào phép tính dp6
@b21dccn809-luongngocyen Жыл бұрын
Cả 2 trường hợp đều chứng tỏ dp2 không thể được chọn , dp3 và dp4 sẽ bao quát hơn
@b21dccn809-luongngocyen Жыл бұрын
Mình bổ sung thêm , mình đã định nghĩa dp[i] là dãy con thoả mãn lớn nhất từ đầu tới vị trí i ,sau đó là trường hợp cơ sở qhd , thử hỏi với i= 2 và i =4 dp nào sẽ lớn hơn ?
@b21dccn809-luongngocyen Жыл бұрын
Nếu dp2 > dp4 thì mình sẽ phát biểu là : dãy con lớn nhất thoả mãn từ đầu tới vị trí 2 sẽ lớn hơn dãy con lớn nhất thoả mãn từ đầu tới vị trí 4, bạn thấy có lí hay vô lí
@hoanggkhanhh5785 Жыл бұрын
acoonko
@A2K37THPTTANHLINH Жыл бұрын
n 10^9 thì có cách nào k a
@b21dccn809-luongngocyen Жыл бұрын
n = 10 ^9 mình chịu bạn ạ
@b21dccn809-luongngocyen Жыл бұрын
n = 10 ^ 5 vẫn có thể tính tổ hợp ckn nhưng bằng cách khác (nlogn do có dính dáng tới nghịch đảo modulo)
@nguyenvietanh1560 Жыл бұрын
trông anh trầm cảm quá =)))))
@Dinhquang06 Жыл бұрын
a giảng hay quá, e chẳng hiểu j :((
@b21dccn809-luongngocyen Жыл бұрын
dạng này nó hơi nâng cao nên kiến thức nền phải vững mới ổn bạn ạ , + mình code đệ quy nên bạn khó hiểu cũng phải @_@
@b21dccn809-luongngocyen Жыл бұрын
bạn xem lại 2 video phía trước phần QHD thử xem , nó có liên quan đến bài này á