├── CHELLO - Hello World ├── CHÊNH LỆCH NHỎ NHẤT ├── CTDL_001 - THUẬT TOÁN SINH ├── CTDL_002 - Tổng dãy con = K ├── CTDL_003 - PHƯƠNG ÁN TỐI ƯU ├── CTDL_004 - DÃY CON TĂNG DẦN BẬC K ├── CTDL_005 - XÓA DỮ LIỆU TRONG DSLK ĐƠN ├── CTDL_006 - LỌC DỮ LIỆU TRÙNG TRONG DSLK ĐƠN ├── DI CHUYỂN TRONG MÊ CUNG ├── DSA01001 - XÂU NHỊ PHÂN KẾ TIẾP ├── DSA01002 - TẬP CON KẾ TIẾP ├── DSA01003 - HOÁN VỊ KẾ TIẾP ├── DSA01004 - SINH TỔ HỢP ├── DSA01005 - SINH HOÁN VỊ ├── DSA01006 - HOÁN VỊ NGƯỢC ├── DSA01007 - XÂU AB CÓ ĐỘ DÀI N ├── DSA01008 - XÂU NHỊ PHÂN CÓ K BIT 1 ├── DSA01009 - XÂU AB ĐẶC BIỆT ├── DSA01010 - TẬP QUÂN SỰ ├── DSA01011 - HOÁN VỊ TIẾP THEO CỦA CHUỖI SỐ ├── DSA01012 - MÃ GRAY 1 ├── DSA01013 - MÃ GRAY 2 ├── DSA01014 - TẬP HỢP ├── DSA01015 - TÌM BỘI SỐ ├── DSA01016 - PHÂN TÍCH SỐ 1 ├── DSA01017 - MÃ GRAY 3 ├── DSA01018 - TẬP CON LIỀN KỀ PHÍA TRƯỚC ├── DSA01019 - HAHAHA ├── DSA01020 - XÂU NHỊ PHÂN TRƯỚC ├── DSA01021 - TỔ HỢP TIẾP THEO ├── DSA01022 - SỐ THỨ TỰ HOÁN VỊ ├── DSA01023 - SỐ THỨ TỰ TỔ HỢP ├── DSA01024 - ĐẶT TÊN - 1 ├── DSA01025 - ĐẶT TÊN - 2 ├── DSA01026 - PHÁT LỘC ├── DSA01027 - HOÁN VỊ DÃY SỐ ├── DSA01028 - LIỆT KÊ TỔ HỢP ├── DSA02001 - DÃY SỐ 1 ├── DSA02002 - DÃY SỐ 2 ├── DSA02003 - DI CHUYỂN TRONG MÊ CUNG 1 ├── DSA02004 - DI CHUYỂN TRONG MÊ CUNG 2 ├── DSA02005 - HOÁN VỊ XÂU KÝ TỰ ├── DSA02006 - DÃY CON TỔNG BẰNG K ├── DSA02007 - ĐỔI CHỖ CÁC CHỮ SỐ ├── DSA02008 - CHỌN SỐ TỪ MA TRẬN VUÔNG CẤP N ├── DSA02009 - CHIA MẢNG ├── DSA02010 - TỔ HỢP SỐ CÓ TỔNG BẰNG X ├── DSA02011 - MÁY ATM ├── DSA02012 - DI CHUYỂN TRONG MA TRẬN ├── DSA02013 - SỐ NGUYÊN TỐ ├── DSA02014 - TỪ ĐIỂN ├── DSA02015 - LOẠI BỎ DẤU NGOẶC ├── DSA02016 - SẮP XẾP QUÂN HẬU 1 ├── DSA02017 - SẮP XẾP QUÂN HẬU 2 ├── DSA02018 - BIỂU THỨC TOÁN HỌC ├── DSA02019 - ĐƯỜNG ĐI DÀI NHẤT ├── DSA02020 - SỐ NHỎ NHẤT CÓ N ƯỚC SỐ ├── DSA02021 - KÝ TỰ ĐẶC BIỆT ├── DSA02022 - NGÀY ĐẶC BIỆT ├── DSA02022 - NGƯỜI DU LỊCH ├── DSA02023 - ĐẶT TÊN ├── DSA02024 - DÃY CON TĂNG DẦN ├── DSA02025 - KÝ TỰ LẶP ├── DSA02027 - NGƯỜI DU LỊCH ├── DSA02028 - CHIA ĐỀU ├── DSA02029 - THÁP HÀ NỘI ├── DSA02030 - LIỆT KÊ XÂU KÝ TỰ ├── DSA02031 - GHÉP CHỮ CÁI ├── DSA02032 - TỔ HỢP SỐ CÓ TỔNG BẰNG X ├── DSA02033 - SỐ XA CÁCH ├── DSA02034 - TRÒ CHƠI VỚI CÁC CON SỐ ├── DSA02035 - HOÁN VỊ CÁC CHỮ SỐ ├── DSA02036 - DÃY CON CÓ TỔNG LẺ ├── DSA02037 - DÃY CON CÓ TỔNG NGUYÊN TỐ ├── DSA02038 - DÃY CON CÓ K PHẦN TỬ TĂNG DẦN ├── DSA02039 - PHÂN TÍCH SỐ 2 ├── DSA02041 - BIẾN ĐỔI VỀ 1 ├── DSA02045 - TẬP CON CỦA XÂU KÝ TỰ ├── DSA03001 - ĐỔI TIỀN ├── DSA03002 - NHẦM CHỮ SỐ ├── DSA03003 - TÌM MAX ├── DSA03004 - TỔNG NHỎ NHẤT ├── DSA03005 - CHIA MẢNG THÀNH HAI MẢNG CON CÓ TỔNG LỚN NHẤT ├── DSA03006 - SẮP XẾP THAM LAM ├── DSA03007 - GIÁ TRỊ NHỎ NHẤT CỦA BIỂU THỨC ├── DSA03008 - SẮP XẾP CÔNG VIỆC 1 ├── DSA03009 - SẮP XẾP CÔNG VIỆC 2 ├── DSA03010 - NỐI DÂY 1 ├── DSA03011 - NỐI DÂY 2 ├── DSA03012 - SẮP ĐẶT XÂU KÝ TỰ 1 ├── DSA03013 - SẮP ĐẶT XÂU KÝ TỰ 2 ├── DSA03014 - SỐ KHỐI LẬP PHƯƠNG ├── DSA03015 - MUA LƯƠNG THỰC ├── DSA03016 - SỐ NHỎ NHẤT ├── DSA03017 - GIÁ TRỊ NHỎ NHẤT CỦA XÂU ├── DSA03018 - SỐ MAY MẮN ├── DSA03019 - PHÂN SỐ ĐƠN VỊ ├── DSA03020 - BIỂU THỨC ĐÚNG ├── DSA03021 - TÌM DÃY SỐ ├── DSA03022 - TÍCH LỚN NHẤT ├── DSA03023 - SẮP XẾP VIÊN BI ├── DSA03024 - LỰA CHỌN TỐI ƯU ├── DSA03025 - TRỤC TỌA ĐỘ ├── DSA03026 - LỰA CHỌN THAM LAM ├── DSA03027 - GIÁ TRỊ LỚN NHẤT ├── DSA03034 - DÃY CON CHUNG ├── DSA03035 - SẮP XẾP ĐƠN GIẢN ├── DSA04001 - LŨY THỪA ├── DSA04002 - LŨY THỪA ĐẢO ├── DSA04003 - ĐẾM DÃY ├── DSA04004 - GẤP ĐÔI DÃY SỐ ├── DSA04005 - DÃY XÂU FIBONACI ├── DSA04006 - ĐẾM SỐ BÍT 1 ├── DSA04007 - HỆ CƠ SỐ K ├── DSA04008 - SỐ FIBONACCI THỨ N ├── DSA04009 - LŨY THỪA MA TRẬN 1 ├── DSA04010 - DÃY CON LIÊN TIẾP CÓ TỔNG LỚN NHẤT ├── DSA04011 - TÍCH HAI SỐ NHỊ PHÂN ├── DSA04012 - TÍCH ĐA THỨC ├── DSA04013 - SẮP XẾP KANGURU ├── DSA04014 - CẶP NGHỊCH THẾ ├── DSA04015 - TÍNH FLOOR(X) ├── DSA04016 - PHẦN TỬ THỨ K ├── DSA04017 - PHẦN TỬ KHÁC NHAU ├── DSA04018 - ĐẾM SỐ 0 ├── DSA04019 - CẶP ĐIỂM GẦN NHẤT ├── DSA04020 - TÌM KIẾM NHỊ PHÂN ├── DSA04021 - DÃY XÂU NHỊ PHÂN ├── DSA04022 - KÝ TỰ THỨ K TRONG XÂU ├── DSA04023 - KHOẢNG CÁCH NHỎ HƠN K ├── DSA04024 - LŨY THỪA MA TRẬN 2 ├── DSA04025 - DÃY SỐ VÔ HẠN ├── DSA04030 - SỐ TRIBONACCI ├── DSA04035 - TÍNH LŨY THỪA ├── DSA05001 - XÂU CON CHUNG DÀI NHẤT ├── DSA05003 - DÃY CON CHUNG DÀI NHẤT CỦA BA XÂU ├── DSA05004 - DÃY CON TĂNG DÀI NHẤT ├── DSA05005 - SỐ BƯỚC ÍT NHẤT ├── DSA05006 - TỔNG LỚN NHẤT CỦA DÃY CON TĂNG DẦN ├── DSA05007 - TỔNG LỚN NHẤT CỦA DÃY CON KHÔNG KỀ NHAU ├── DSA05008 - DÃY CON CÓ TỔNG BẰNG S ├── DSA05009 - TẬP CON BẰNG NHAU ├── DSA05010 - DÃY CON DÀI NHẤT CÓ TỔNG CHIA HẾT CHO K ├── DSA05011 - SỐ CÓ TỔNG CHỮ SỐ BẰNG K ├── DSA05012 - TỔ HỢP C(n, k) ├── DSA05013 - BẬC THANG ├── DSA05014 - CATALAN NUMBER ├── DSA05015 - TÍNH P(N,K) ├── DSA05016 - SỐ UGLY ├── DSA05017 - DÃY SỐ BI-TONIC ├── DSA05018 - XÂU CON ĐỐI XỨNG DÀI NHẤT ├── DSA05019 - HÌNH VUÔNG LỚN NHẤT ├── DSA05020 - ĐƯỜNG ĐI NHỎ NHẤT ├── DSA05021 - CẶP SỐ ├── DSA05022 - KÝ TỰ GIỐNG NHAU ├── DSA05023 - TỔNG CÁC XÂU CON ├── DSA05024 - TỔNG BẰNG K ├── DSA05025 - CON ẾCH ├── DSA05026 - XEM PHIM ├── DSA05027 - CÁI TÚI ├── DSA05028 - BIẾN ĐỔI XÂU ├── DSA05029 - GIẢI MÃ ├── DSA05030 - DI CHUYỂN VỀ GỐC TỌA ĐỘ ├── DSA05031 - TỔNG BÌNH PHƯƠNG ├── DSA05032 - XÂU ĐỐI XỨNG 1 ├── DSA05033 - XÂU ĐỐI XỨNG 2 ├── DSA05034 - TỔNG SỐ CÁCH DI CHUYỂN ├── DSA05035 - CHỮ SỐ SẮP XẾP TĂNG DẦN ├── DSA05036 - TĂNG - GIẢM ├── DSA05037 - CHỮ SỐ SẮP XẾP TĂNG DẦN ├── DSA05038 - DÃY CON TĂNG DÀI NHẤT 2 CHIỀU ├── DSA05040 - DÃY TAM GIÁC DÀI NHẤT ├── DSA05041 - BIẾN ĐỔI VỀ XÂU ĐỐI XỨNG ├── DSA05042 - DÃY CON LIÊN TIẾP TỔNG BẰNG K ├── DSA05043 - SỐ THUẬN NGHỊCH ├── DSA05047 - CHỌN Ô ├── DSA06001 - SẮP XẾP XEN KẼ ├── DSA06002 - SẮP XẾP THEO GIÁ TRỊ TUYỆT ĐỐI ├── DSA06003 - ĐỔI CHỖ ÍT NHẤT ├── DSA06004 - HỢP VÀ GIAO CỦA HAI DÃY SỐ 1 ├── DSA06005 - HỢP VÀ GIAO CỦA HAI DÃY SỐ 2 ├── DSA06006 - SẮP XẾP [0 1 2] ├── DSA06007 - SẮP XẾP DÃY CON LIÊN TỤC ├── DSA06008 - ĐẾM CẶP ├── DSA06009 - CẶP SỐ TỔNG BẰNG K ├── DSA06010 - SẮP XẾP CHỮ SỐ ├── DSA06011 - TỔNG GẦN 0 NHẤT ├── DSA06012 - PHẦN TỬ LỚN NHẤT ├── DSA06013 - SỐ LẦN XUẤT HIỆN ├── DSA06014 - TỔNG CẶP SỐ NGUYÊN TỐ ├── DSA06015 - MERGE SORT ├── DSA06016 - TÍCH LỚN NHẤT - NHỎ NHẤT ├── DSA06017 - TRỘN HAI DÃY ├── DSA06018 - BỔ SUNG PHẦN TỬ ├── DSA06019 - SẮP XẾP THEO SỐ LẦN XUẤT HIỆN ├── DSA06020 - TÌM KIẾM ├── DSA06021 - TÌM KIẾM TRONG DÃY SẮP XẾP VÒNG ├── DSA06022 - SỐ NHỎ NHẤT VÀ NHỎ THỨ HAI ├── DSA06023 - SẮP XẾP ĐỔI CHỖ TRỰC TIẾP ├── DSA06024 - SẮP XẾP CHỌN ├── DSA06025 - SẮP XẾP CHÈN ├── DSA06026 - SẮP XẾP NỔI BỌT ├── DSA06027 - SẮP XẾP ĐỔI CHỖ TRỰC TIẾP - LIỆT KÊ NGƯỢC ├── DSA06028 - SẮP XẾP CHỌN - LIỆT KÊ NGƯỢC ├── DSA06029 - SẮP XẾP CHÈN - LIỆT KÊ NGƯỢC ├── DSA06030 - SẮP XẾP NỔI BỌT - LIỆT KÊ NGƯỢC ├── DSA06031 - PHẦN TỬ LỚN NHẤT TRONG DÃY CON ├── DSA06032 - BỘ BA SỐ CÓ TỔNG NHỎ HƠN K ├── DSA06033 - KHOẢNG CÁCH XA NHẤT ├── DSA06034 - CẶP SỐ CÓ TỔNG BẰNG K ├── DSA06035 - DÃY TAM GIÁC DÀI NHẤT ├── DSA06036 - BỘ BA SỐ BẰNG K ├── DSA06037 - SẮP XẾP ĐOẠN CON ├── DSA06038 - CẶP SỐ ├── DSA06039 - SỐ ĐẦU TIÊN BỊ LẶP ├── DSA06040 - GIAO CỦA BA DÃY SỐ ├── DSA06041 - SỐ XUẤT HIỆN NHIỀU NHẤT ├── DSA06043 - ĐIỂM CÂN BẰNG ├── DSA06044 - SẮP XẾP CHẴN LẺ ├── DSA06046 - CHÊNH LỆCH NHỎ NHẤT ├── DSA06047 - BỘ BA SỐ PYTAGO ├── DSA06048 - SỐ LẦN QUAY VÒNG ├── DSA06049 - ĐẾM CẶP ├── DSA07001 - NGĂN XẾP 1 ├── DSA07002 - NGĂN XẾP 2 ├── DSA07003 - KIỂM TRA BIỂU THỨC SỐ HỌC ├── DSA07004 - ĐẾM SỐ DẤU NGOẶC ĐỔI CHIỀU ├── DSA07005 - BIỂU THỨC TƯƠNG ĐƯƠNG ├── DSA07007 - SO SÁNH BIỂU THỨC ├── DSA07008 - BIẾN ĐỔI TRUNG TỐ - HẬU TỐ ├── DSA07009 - BIẾN ĐỔI TIỀN TỐ - TRUNG TỐ ├── DSA07010 - BIẾN ĐỐI TIỀN TỐ - HẬU TỐ ├── DSA07011 - BIẾN ĐỔI HẬU TỐ - TIỀN TỐ ├── DSA07012 - BIẾN ĐỔI HẬU TỐ - TRUNG TỐ ├── DSA07013 - TÍNH GIÁ TRỊ BIỂU THỨC HẬU TỐ ├── DSA07014 - TÍNH GIÁ TRỊ BIỂU THỨC TIỀN TỐ ├── DSA07015 - TÍNH TOÁN GIÁ TRỊ BIỂU THỨC TRUNG TỐ ├── DSA07016 - BIỂU THỨC TĂNG GIẢM ├── DSA07017 - PHẦN TỬ BÊN PHẢI NHỎ HƠN ├── DSA07018 - TỔNG ĐA THỨC ├── DSA07019 - HÌNH CHỮ NHẬT LỚN NHẤT ├── DSA07021 - DÃY NGOẶC ĐÚNG DÀI NHẤT ├── DSA07022 - PHẦN TỬ CÓ SỐ LẦN XUẤT HIỆN NHIỀU HƠN BÊN PHẢI ├── DSA07023 - ĐẢO TỪ ├── DSA07024 - GHÉP VÁN GỖ ├── DSA07027 - PHẦN TỬ BÊN PHẢI ĐẦU TIÊN LỚN HƠN ├── DSA07028 - NHỊP CHỨNG KHOÁN ├── DSA07029 - GIẢI MÃ XÂU KÝ TỰ ├── DSA07030 - HÌNH CHỮ NHẬT 0-1 ├── DSA07041 - BIỂU THỨC ĐÚNG DÀI NHẤT ├── DSA07045 - GÕ BÀN PHÍM ├── DSA07110 - KIỂM TRA DÃY NGOẶC ĐÚNG ├── DSA08001 - CẤU TRÚC DỮ LIỆU HÀNG ĐỢI 1 ├── DSA08002 - CẤU TRÚC DỮ LIỆU HÀNG ĐỢI 2 ├── DSA08003 - HÀNG ĐỢI HAI ĐẦU (DEQUEUE) ├── DSA08004 - GIÁ TRỊ NHỎ NHẤT CỦA XÂU ├── DSA08005 - SỐ NHỊ PHÂN TỪ 1 ĐẾN N ├── DSA08006 - SỐ 0 VÀ SỐ 9 ├── DSA08007 - SỐ BDN 1 ├── DSA08008 - SỐ BDN 2 ├── DSA08009 - BIẾN ĐỔI S – T ├── DSA08010 - BIẾN ĐỔI SỐ TỰ NHIÊN ├── DSA08011 - KHOẢNG CÁCH XÂU KÝ TỰ ├── DSA08012 - TÌM SỐ K THỎA MÃN ĐIỀU KIỆN ├── DSA08013 - DI CHUYỂN TRÁNH VẬT CẢN ├── DSA08014 - GIEO MẦM ├── DSA08015 - DI CHUYỂN TRONG KHÔNG GIAN ├── DSA08016 - HEXGAME ├── DSA08017 - SỐ LỘC PHÁT 1 ├── DSA08018 - SỐ LỘC PHÁT 2 ├── DSA08019 - SỐ LỘC PHÁT 3 ├── DSA08020 - BIẾN ĐỔI SỐ NGUYÊN TỐ ├── DSA08021 - DI CHUYỂN TRONG MA TRẬN ├── DSA08022 - BỘI SỐ LỚN NHẤT CỦA 3 ├── DSA08025 - QUÂN MÃ ├── DSA08029 - QUAY HÌNH VUÔNG ├── DSA09001 - CHUYỂN DANH SÁCH CẠNH SANG DANH SÁCH KỀ ├── DSA09002 - CHUYỂN TỪ DANH SÁCH KỀ SANG DANH SÁCH CẠNH ├── DSA09003 - BIỂU DIỄN ĐỒ THỊ CÓ HƯỚNG. ├── DSA09004 - DFS TRÊN ĐỒ THỊ VÔ HƯỚNG ├── DSA09005 - BFS TRÊN ĐỒ THỊ VÔ HƯỚNG ├── DSA09006 - ĐƯỜNG ĐI THEO DFS VỚI ĐỒ THỊ VÔ HƯỚNG ├── DSA09007 - ĐƯỜNG ĐI THEO BFS TRÊN ĐỒ THỊ VÔ HƯỚNG ├── DSA09008 - ĐẾM SỐ THÀNH PHẦN LIÊN THÔNG ├── DSA09009 - TÌM SỐ THÀNH PHẦN LIÊN THÔNG VỚI BFS ├── DSA09010 - KIỂM TRA TÍNH LIÊN THÔNG MẠNH ├── DSA09011 - SỐ LƯỢNG HÒN ĐẢO ├── DSA09012 - LIỆT KÊ ĐỈNH TRỤ ├── DSA09013 - LIỆT KÊ CẠNH CẦU ├── DSA09014 - KIỂM TRA CHU TRÌNH TRÊN ĐỒ THỊ VÔ HƯỚNG ├── DSA09015 - KIỂM TRA CHU TRÌNH TRÊN ĐỒ THỊ CÓ HƯỚNG ├── DSA09016 - KIỂM TRA CHU TRÌNH TRÊN ĐỒ THỊ CÓ HƯỚNG VỚI DFS ├── DSA09017 - KIỂM TRA ĐỒ THỊ CÓ PHẢI LÀ CÂY HAY KHÔNG ├── DSA09018 - LIỆT KÊ ĐỈNH TRỤ ├── DSA09019 - KIỂM TRA CHU TRÌNH ├── DSA09020 - CHUYỂN DANH SÁCH KỀ SANG MA TRẬN KỀ ├── DSA09021 - CHUYỂN MA TRẬN KỀ SANG DANH SÁCH KỀ ├── DSA09022 - DFS TRÊN ĐỒ THỊ CÓ HƯỚNG ├── DSA09024 - BFS TRÊN ĐỒ THỊ CÓ HƯỚNG ├── DSA09025 - ĐƯỜNG ĐI THEO DFS VỚI ĐỒ THỊ CÓ HƯỚNG ├── DSA09026 - ĐƯỜNG ĐI THEO BFS TRÊN ĐỒ THỊ CÓ HƯỚNG ├── DSA09027 - KIỂM TRA ĐƯỜNG ĐI ├── DSA09028 - TÔ MÀU ĐỒ THỊ ├── DSA09029 - ĐƯỜNG ĐI HAMILTON ├── DSA09030 - ĐỒ THỊ HAI PHÍA ├── DSA09032 - KẾT BẠN ├── DSA09033 - MẠNG XÃ HỘI ├── DSA09034 - ĐẾM SỐ AO ├── DSA09037 - HỌP MẶT ├── DSA10001 - TÌM ĐƯỜNG ├── DSA10003 - KIỂM TRA CHU TRÌNH SỬ DỤNG DISJOIN SET ├── DSA10004 - ĐƯỜNG ĐI VÀ CHU TRÌNH EULER VỚI ĐỒ THỊ VÔ HƯỚNG ├── DSA10005 - CHU TRÌNH EULER TRONG ĐỒ THỊ CÓ HƯỚNG ├── DSA10006 - CÂY KHUNG CỦA ĐỒ THỊ THEO THUẬT TOÁN DFS ├── DSA10007 - CÂY KHUNG CỦA ĐỒ THỊ THEO THUẬT TOÁN BFS ├── DSA10011 - DI CHUYỂN TRÊN BẢNG SỐ ├── DSA11001 - CÂY BIỂU THỨC 1 ├── DSA11002 - CÂY BIỂU THỨC 2 ├── DSA11003 - DUYỆT CÂY 1 ├── DSA11005 - DUYỆT CÂY 2 ├── DSAKT012 - ĐỔI TIỀN ├── DSAKT053 - SỐ NGUYÊN LỚN ├── DSAKT055 - BÀI TOÁN CÁI TÚI 0-1 ├── DSAKT110 - NHÀ KHÔNG KỀ NHAU ├── DÃY CON CÓ K PHẦN TỬ TĂNG DẦN ├── DÃY CON CÓ TỔNG BẰNG S ├── DÃY CON CÓ TỔNG LẺ ├── DÃY CON CÓ TỔNG NGUYÊN TỐ ├── DÃY CON LIÊN TIẾP ├── DÃY CON TĂNG DẦN ├── DÃY SỐ ĐẸP ├── GHÉP CHỮ CÁI ├── HOÁN VỊ CÁC CHỮ SỐ ├── HOÁN VỊ DÃY SỐ ├── HOÁN VỊ NGƯỢC ├── LIỆT KÊ TỔ HỢP ├── LIỆT KÊ XÂU KÝ TỰ ├── LŨY THỪA MA TRẬN ├── LŨY THỪA MA TRẬN 4 ├── LŨY THỪA MA TRẬN 5 ├── MIN VÀ MAX ├── MÃ SỐ ├── NGƯỜI DU LỊCH ├── PHÁT LỘC ├── PHẦN TỬ LỚN NHẤT TRONG DÃY CON ├── PTIT125D - Di chuyển ăn cỏ ├── QUÂN VUA TRÊN BÀN CỜ ├── SẮP XẾP CHẴN LẺ ├── SẮP XẾP QUÂN HẬU ├── SỐ 2 ƯU THẾ ├── SỐ CẶP BẠN TỐT ├── SỐ LỘC PHÁT ├── SỐ THỨ TỰ HOÁN VỊ ├── SỐ THỨ TỰ TỔ HỢP ├── SỐ XA CÁCH ├── THI ĐẤU ĐỐI KHÁNG ├── THÁP HÀ NỘI ├── TN05009 - CHU TRÌNH THEO DFS ├── TRÒ CHƠI CARO “NGANG” ├── TRÒ CHƠI VỚI CÁC CON SỐ ├── TÁCH NHÓM TỐI ƯU ├── TÍCH CHỮ SỐ ├── TỔ HỢP “NGƯỢC” ├── TỔNG CÁC SỐ TỰ NHIÊN ├── TỔNG ƯỚC SỐ ├── XÂU AB ├── XÂU CON NHỎ NHẤT ├── ĐẶT TÊN └── ĐẾM SỐ VẬT CẢN TRÊN MÊ CUNG /CHELLO - Hello World: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | cout << "Hello PTIT."; 9 | } 10 | /* Do Xuan Huong 11 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 12 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 13 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 14 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 15 | @@@@@@@@@@##########################################@@@@@@@@@ 16 | @@@@@@@@##############################################@@@@@@@ 17 | @@@@@@#################################################@@@@@@ 18 | @@@@@####################################################@@@@ 19 | @@@%#####################@@@@@@@@@@@######################@@@ 20 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 21 | @@##################@@@@@@ @@@@@@##################@@ 22 | @@#################@@@@@ @@@@###################@ 23 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 24 | @ &@@@@ @@@@ .......@@ 25 | @@ @@@@@@ @@@@@@ .......@@ 26 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 27 | @@@ @@@@@@@@@@@ ......@@@@ 28 | @@@@ ......@@@@@ 29 | @@@@@@ ......@@@@@@ 30 | @@@@@@@ .....@@@@@@@@ 31 | @@@@@@@@@ .....@@@@@@@@@@ 32 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 36 | */ 37 | -------------------------------------------------------------------------------- /CTDL_005 - XÓA DỮ LIỆU TRONG DSLK ĐƠN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | cin >> n; 10 | int a[n], k; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | cin >> k; 14 | for (int i = 0; i < n; i++) 15 | if (a[i] != k) 16 | cout << a[i] << " "; 17 | } 18 | /* Do Xuan Huong 19 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 20 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 21 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 23 | @@@@@@@@@@##########################################@@@@@@@@@ 24 | @@@@@@@@##############################################@@@@@@@ 25 | @@@@@@#################################################@@@@@@ 26 | @@@@@####################################################@@@@ 27 | @@@%#####################@@@@@@@@@@@######################@@@ 28 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 29 | @@##################@@@@@@ @@@@@@##################@@ 30 | @@#################@@@@@ @@@@###################@ 31 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 32 | @ &@@@@ @@@@ .......@@ 33 | @@ @@@@@@ @@@@@@ .......@@ 34 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 35 | @@@ @@@@@@@@@@@ ......@@@@ 36 | @@@@ ......@@@@@ 37 | @@@@@@ ......@@@@@@ 38 | @@@@@@@ .....@@@@@@@@ 39 | @@@@@@@@@ .....@@@@@@@@@@ 40 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 41 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 42 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 44 | */ 45 | -------------------------------------------------------------------------------- /CTDL_006 - LỌC DỮ LIỆU TRÙNG TRONG DSLK ĐƠN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n, x; 9 | cin >> n; 10 | map m; 11 | for (int i = 0; i < n; i++) 12 | { 13 | cin >> x; 14 | m[x]++; 15 | if (m[x] == 1) 16 | cout << x << " "; 17 | } 18 | } 19 | /* Do Xuan Huong 20 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 21 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 24 | @@@@@@@@@@##########################################@@@@@@@@@ 25 | @@@@@@@@##############################################@@@@@@@ 26 | @@@@@@#################################################@@@@@@ 27 | @@@@@####################################################@@@@ 28 | @@@%#####################@@@@@@@@@@@######################@@@ 29 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 30 | @@##################@@@@@@ @@@@@@##################@@ 31 | @@#################@@@@@ @@@@###################@ 32 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 33 | @ &@@@@ @@@@ .......@@ 34 | @@ @@@@@@ @@@@@@ .......@@ 35 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 36 | @@@ @@@@@@@@@@@ ......@@@@ 37 | @@@@ ......@@@@@ 38 | @@@@@@ ......@@@@@@ 39 | @@@@@@@ .....@@@@@@@@ 40 | @@@@@@@@@ .....@@@@@@@@@@ 41 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 42 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 45 | */ 46 | -------------------------------------------------------------------------------- /DSA01001 - XÂU NHỊ PHÂN KẾ TIẾP: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string s; 10 | cin >> s; 11 | s = '0' + s; 12 | for (int i = s.size() - 1; i >= 0; i--) 13 | { 14 | if (s[i] == '0') 15 | { 16 | s[i] = '1'; 17 | for (int j = i + 1; j < s.size(); j++) 18 | s[j] = '0'; 19 | break; 20 | } 21 | } 22 | for (int i = 1; i < s.size(); i++) 23 | cout << s[i]; 24 | cout << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA01011 - HOÁN VỊ TIẾP THEO CỦA CHUỖI SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | int test; 10 | string s; 11 | cin >> test >> s; 12 | int n = s.length(); 13 | int i = n - 2; 14 | while (s[i + 1] <= s[i]) 15 | i--; 16 | if (i < 0) 17 | cout << test << " BIGGEST" << endl; 18 | else 19 | { 20 | int k = n - 1; 21 | while (s[i] >= s[k]) 22 | k--; 23 | swap(s[i], s[k]); 24 | sort(s.begin() + i + 1, s.end()); 25 | cout << test << ' ' << s << endl; 26 | } 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA01015 - TÌM BỘI SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | queue q; 15 | q.push(9); 16 | while (q.size()) 17 | { 18 | long long k = q.front(); 19 | q.pop(); 20 | if (k % n == 0) 21 | { 22 | cout << k << endl; 23 | break; 24 | } 25 | q.push(k * 10); 26 | q.push(k * 10 + 9); 27 | } 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA01026 - PHÁT LỘC: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (n == k) 9 | { 10 | if (s[n - 1] == '6') 11 | cout << s << endl; 12 | return; 13 | } 14 | if (s[k - 1] == '8') 15 | Try(s + "6"); 16 | else 17 | { 18 | if (k < 4) 19 | Try(s + "6"); 20 | else if (s[k - 2] == '8' || s[k - 3] == '8') 21 | Try(s + "6"); 22 | Try(s + "8"); 23 | } 24 | } 25 | int main() 26 | { 27 | ios_base::sync_with_stdio(0); 28 | cin.tie(0); 29 | cin >> n; 30 | Try("8"); 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA02002 - DÃY SỐ 2: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | string s = ""; 15 | vector a(n), b(n); 16 | stack st; 17 | for (int i = 0; i < n; i++) 18 | cin >> a[i]; 19 | for (int i = 0; i < n; i++) 20 | { 21 | s += "[" + to_string(a[0]); 22 | for (int j = 1; j < n - i; j++) 23 | { 24 | s += " " + to_string(a[j]); 25 | b[j - 1] = a[j - 1] + a[j]; 26 | } 27 | s += "]"; 28 | st.push(s); 29 | s = ""; 30 | for (int j = 0; j < n - i; j++) 31 | { 32 | a[j] = b[j]; 33 | } 34 | } 35 | while (st.size()) 36 | { 37 | cout << st.top() << " "; 38 | st.pop(); 39 | } 40 | cout << endl; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /DSA02012 - DI CHUYỂN TRONG MA TRẬN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m, x; 13 | cin >> n >> m; 14 | int a[n + 1][m + 1] = {}; 15 | a[0][1] = 1; 16 | for (int i = 1; i <= n; i++) 17 | { 18 | for (int j = 1; j <= m; j++) 19 | { 20 | cin >> x; 21 | a[i][j] = a[i - 1][j] + a[i][j - 1]; 22 | } 23 | } 24 | cout << a[n][m] << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA02022 - NGÀY ĐẶC BIỆT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | vector a1 = {"02", "20", "22"}; 9 | vector a2 = {"02"}; 10 | vector a3 = {"2000", "2002", "2020", "2022", "2200", "2202", "2220", "2222"}; 11 | for (int i = 0; i < a1.size(); i++) 12 | for (int j = 0; j < a2.size(); j++) 13 | for (int k = 0; k < a3.size(); k++) 14 | cout << a1[i] + "/" + a2[j] + "/" + a3[k] << endl; 15 | } 16 | /* Do Xuan Huong 17 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 18 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 19 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 20 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 21 | @@@@@@@@@@##########################################@@@@@@@@@ 22 | @@@@@@@@##############################################@@@@@@@ 23 | @@@@@@#################################################@@@@@@ 24 | @@@@@####################################################@@@@ 25 | @@@%#####################@@@@@@@@@@@######################@@@ 26 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 27 | @@##################@@@@@@ @@@@@@##################@@ 28 | @@#################@@@@@ @@@@###################@ 29 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 30 | @ &@@@@ @@@@ .......@@ 31 | @@ @@@@@@ @@@@@@ .......@@ 32 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 33 | @@@ @@@@@@@@@@@ ......@@@@ 34 | @@@@ ......@@@@@ 35 | @@@@@@ ......@@@@@@ 36 | @@@@@@@ .....@@@@@@@@ 37 | @@@@@@@@@ .....@@@@@@@@@@ 38 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 39 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 40 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 42 | */ 43 | -------------------------------------------------------------------------------- /DSA02029 - THÁP HÀ NỘI: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | void Tower(int n, char a, char b, char c) 5 | { 6 | if (n == 1) 7 | { 8 | cout << a << " -> " << c << endl; 9 | return; 10 | } 11 | Tower(n - 1, a, c, b); 12 | Tower(1, a, b, c); 13 | Tower(n - 1, b, a, c); 14 | } 15 | int main() 16 | { 17 | ios_base::sync_with_stdio(0); 18 | cin.tie(0); 19 | char a = 'A', b = 'B', c = 'C'; 20 | int n; 21 | cin >> n; 22 | Tower(n, a, b, c); 23 | } 24 | /* Do Xuan Huong 25 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 29 | @@@@@@@@@@##########################################@@@@@@@@@ 30 | @@@@@@@@##############################################@@@@@@@ 31 | @@@@@@#################################################@@@@@@ 32 | @@@@@####################################################@@@@ 33 | @@@%#####################@@@@@@@@@@@######################@@@ 34 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 35 | @@##################@@@@@@ @@@@@@##################@@ 36 | @@#################@@@@@ @@@@###################@ 37 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 38 | @ &@@@@ @@@@ .......@@ 39 | @@ @@@@@@ @@@@@@ .......@@ 40 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 41 | @@@ @@@@@@@@@@@ ......@@@@ 42 | @@@@ ......@@@@@ 43 | @@@@@@ ......@@@@@@ 44 | @@@@@@@ .....@@@@@@@@ 45 | @@@@@@@@@ .....@@@@@@@@@@ 46 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 50 | */ 51 | -------------------------------------------------------------------------------- /DSA02033 - SỐ XA CÁCH: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n, check[15]; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (k == n) 9 | cout << s << endl; 10 | for (int i = 1; i <= n; i++) 11 | if (k == 0 || (!check[i] && abs(s[k - 1] - '0' - i) != 1)) 12 | { 13 | check[i] = 1; 14 | Try(s + to_string(i)); 15 | check[i] = 0; 16 | } 17 | } 18 | int main() 19 | { 20 | ios_base::sync_with_stdio(0); 21 | cin.tie(0); 22 | int t; 23 | cin >> t; 24 | while (t--) 25 | { 26 | cin >> n; 27 | Try(""); 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA02034 - TRÒ CHƠI VỚI CÁC CON SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n, check[15]; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (k == n) 9 | cout << s << endl; 10 | for (int i = 1; i <= n; i++) 11 | if (k == 0 || (!check[i] && abs(s[k - 1] - '0' - i) != 1)) 12 | { 13 | check[i] = 1; 14 | Try(s + to_string(i)); 15 | check[i] = 0; 16 | } 17 | } 18 | int main() 19 | { 20 | ios_base::sync_with_stdio(0); 21 | cin.tie(0); 22 | int t; 23 | cin >> t; 24 | while (t--) 25 | { 26 | cin >> n; 27 | Try(""); 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA03001 - ĐỔI TIỀN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | int a[100001] = {}; 11 | int b[10] = {1, 2, 5, 10, 20, 50, 100, 200, 500, 1000}; 12 | for (int i = 1; i <= 100000; i++) 13 | { 14 | a[i] = 1e9; 15 | for (int j = 0; j < 10; j++) 16 | { 17 | if (i == b[j]) 18 | { 19 | a[i] = 1; 20 | break; 21 | } 22 | if (i - b[j] > 0 && a[i - b[j]] > 0) 23 | a[i] = min(a[i], a[i - b[j]] + 1); 24 | } 25 | } 26 | while (t--) 27 | { 28 | int n; 29 | cin >> n; 30 | cout << a[n] << endl; 31 | } 32 | } 33 | /* Do Xuan Huong 34 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 38 | @@@@@@@@@@##########################################@@@@@@@@@ 39 | @@@@@@@@##############################################@@@@@@@ 40 | @@@@@@#################################################@@@@@@ 41 | @@@@@####################################################@@@@ 42 | @@@%#####################@@@@@@@@@@@######################@@@ 43 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 44 | @@##################@@@@@@ @@@@@@##################@@ 45 | @@#################@@@@@ @@@@###################@ 46 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 47 | @ &@@@@ @@@@ .......@@ 48 | @@ @@@@@@ @@@@@@ .......@@ 49 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 50 | @@@ @@@@@@@@@@@ ......@@@@ 51 | @@@@ ......@@@@@ 52 | @@@@@@ ......@@@@@@ 53 | @@@@@@@ .....@@@@@@@@ 54 | @@@@@@@@@ .....@@@@@@@@@@ 55 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 59 | */ 60 | -------------------------------------------------------------------------------- /DSA03002 - NHẦM CHỮ SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int to_five(string s) 5 | { 6 | int n = 0; 7 | for (int i = 0; i < s.size(); i++) 8 | { 9 | if (s[i] == '6') 10 | s[i] = '5'; 11 | n = n * 10 + s[i] - '0'; 12 | } 13 | return n; 14 | } 15 | int to_six(string s) 16 | { 17 | int n = 0; 18 | for (int i = 0; i < s.size(); i++) 19 | { 20 | if (s[i] == '5') 21 | s[i] = '6'; 22 | n = n * 10 + s[i] - '0'; 23 | } 24 | return n; 25 | } 26 | int main() 27 | { 28 | ios_base::sync_with_stdio(0); 29 | cin.tie(0); 30 | string a, b; 31 | cin >> a >> b; 32 | cout << to_five(a) + to_five(b) << " " << to_six(a) + to_six(b); 33 | } 34 | /* Do Xuan Huong 35 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 38 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 39 | @@@@@@@@@@##########################################@@@@@@@@@ 40 | @@@@@@@@##############################################@@@@@@@ 41 | @@@@@@#################################################@@@@@@ 42 | @@@@@####################################################@@@@ 43 | @@@%#####################@@@@@@@@@@@######################@@@ 44 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 45 | @@##################@@@@@@ @@@@@@##################@@ 46 | @@#################@@@@@ @@@@###################@ 47 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 48 | @ &@@@@ @@@@ .......@@ 49 | @@ @@@@@@ @@@@@@ .......@@ 50 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 51 | @@@ @@@@@@@@@@@ ......@@@@ 52 | @@@@ ......@@@@@ 53 | @@@@@@ ......@@@@@@ 54 | @@@@@@@ .....@@@@@@@@ 55 | @@@@@@@@@ .....@@@@@@@@@@ 56 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 59 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 60 | */ 61 | -------------------------------------------------------------------------------- /DSA03003 - TÌM MAX: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | long long a[n], s = 0, mod = 1e9 + 7; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | sort(a, a + n); 18 | for (int i = 0; i < n; i++) 19 | s = (s + a[i] * i) % mod; 20 | cout << s << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA03004 - TỔNG NHỎ NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n]; 15 | long long s1 = 0, s2 = 0; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | sort(a, a + n); 19 | for (int i = 0; i < n; i += 2) 20 | s1 = s1 * 10 + a[i]; 21 | for (int i = 1; i < n; i += 2) 22 | s2 = s2 * 10 + a[i]; 23 | cout << s1 + s2 << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA03005 - CHIA MẢNG THÀNH HAI MẢNG CON CÓ TỔNG LỚN NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n], s1 = 0, s2 = 0; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | sort(a, a + n); 18 | k = min(k, n - k); 19 | for (int i = 0; i < k; i++) 20 | s1 += a[i]; 21 | for (int i = k; i < n; i++) 22 | s2 += a[i]; 23 | cout << s2 - s1 << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA03007 - GIÁ TRỊ NHỎ NHẤT CỦA BIỂU THỨC: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | bool cmp(long long a, long long b) 5 | { 6 | return a > b; 7 | } 8 | int main() 9 | { 10 | ios_base::sync_with_stdio(0); 11 | cin.tie(0); 12 | int t; 13 | cin >> t; 14 | while (t--) 15 | { 16 | int n; 17 | cin >> n; 18 | long long s = 0; 19 | vector a(n), b(n); 20 | for (int i = 0; i < n; i++) 21 | cin >> a[i]; 22 | for (int i = 0; i < n; i++) 23 | cin >> b[i]; 24 | sort(a.begin(), a.end()); 25 | sort(b.begin(), b.end(), cmp); 26 | for (int i = 0; i < n; i++) 27 | s += a[i] * b[i]; 28 | cout << s << endl; 29 | } 30 | } 31 | /* Do Xuan Huong 32 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 36 | @@@@@@@@@@##########################################@@@@@@@@@ 37 | @@@@@@@@##############################################@@@@@@@ 38 | @@@@@@#################################################@@@@@@ 39 | @@@@@####################################################@@@@ 40 | @@@%#####################@@@@@@@@@@@######################@@@ 41 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 42 | @@##################@@@@@@ @@@@@@##################@@ 43 | @@#################@@@@@ @@@@###################@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 45 | @ &@@@@ @@@@ .......@@ 46 | @@ @@@@@@ @@@@@@ .......@@ 47 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 48 | @@@ @@@@@@@@@@@ ......@@@@ 49 | @@@@ ......@@@@@ 50 | @@@@@@ ......@@@@@@ 51 | @@@@@@@ .....@@@@@@@@ 52 | @@@@@@@@@ .....@@@@@@@@@@ 53 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 57 | */ 58 | -------------------------------------------------------------------------------- /DSA03008 - SẮP XẾP CÔNG VIỆC 1: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | pair a[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i].second; 17 | for (int i = 0; i < n; i++) 18 | cin >> a[i].first; 19 | sort(a, a + n); 20 | int ans = 1, k = a[0].first; 21 | for (int i = 1; i < n; i++) 22 | { 23 | if (a[i].second >= k) 24 | { 25 | ans++; 26 | k = a[i].first; 27 | } 28 | } 29 | cout << ans << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA03011 - NỐI DÂY 2: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int x, s = 0, mod = 1e9 + 7; 15 | priority_queue, greater> q; 16 | for (int i = 0; i < n; i++) 17 | { 18 | cin >> x; 19 | q.push(x); 20 | } 21 | while (q.size() > 1) 22 | { 23 | int s1 = q.top(); 24 | q.pop(); 25 | int s2 = q.top(); 26 | q.pop(); 27 | int k = (s1 + s2) % mod; 28 | s = (s + k) % mod; 29 | q.push(k); 30 | } 31 | cout << s << endl; 32 | } 33 | } 34 | /* Do Xuan Huong 35 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 38 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 39 | @@@@@@@@@@##########################################@@@@@@@@@ 40 | @@@@@@@@##############################################@@@@@@@ 41 | @@@@@@#################################################@@@@@@ 42 | @@@@@####################################################@@@@ 43 | @@@%#####################@@@@@@@@@@@######################@@@ 44 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 45 | @@##################@@@@@@ @@@@@@##################@@ 46 | @@#################@@@@@ @@@@###################@ 47 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 48 | @ &@@@@ @@@@ .......@@ 49 | @@ @@@@@@ @@@@@@ .......@@ 50 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 51 | @@@ @@@@@@@@@@@ ......@@@@ 52 | @@@@ ......@@@@@ 53 | @@@@@@ ......@@@@@@ 54 | @@@@@@@ .....@@@@@@@@ 55 | @@@@@@@@@ .....@@@@@@@@@@ 56 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 59 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 60 | */ 61 | -------------------------------------------------------------------------------- /DSA03012 - SẮP ĐẶT XÂU KÝ TỰ 1: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | string s; 13 | cin >> s; 14 | int a[30] = {}, MAX = 0; 15 | for (int i = 0; i < s.size(); i++) 16 | a[s[i] - 'a']++; 17 | for (int i = 0; i < 30; i++) 18 | MAX = max(MAX, a[i]); 19 | if (MAX * 2 > s.size() + 1) 20 | cout << -1 << endl; 21 | else 22 | cout << 1 << endl; 23 | } 24 | } 25 | /* Do Xuan Huong 26 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 30 | @@@@@@@@@@##########################################@@@@@@@@@ 31 | @@@@@@@@##############################################@@@@@@@ 32 | @@@@@@#################################################@@@@@@ 33 | @@@@@####################################################@@@@ 34 | @@@%#####################@@@@@@@@@@@######################@@@ 35 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 36 | @@##################@@@@@@ @@@@@@##################@@ 37 | @@#################@@@@@ @@@@###################@ 38 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 39 | @ &@@@@ @@@@ .......@@ 40 | @@ @@@@@@ @@@@@@ .......@@ 41 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 42 | @@@ @@@@@@@@@@@ ......@@@@ 43 | @@@@ ......@@@@@ 44 | @@@@@@ ......@@@@@@ 45 | @@@@@@@ .....@@@@@@@@ 46 | @@@@@@@@@ .....@@@@@@@@@@ 47 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 51 | */ 52 | -------------------------------------------------------------------------------- /DSA03013 - SẮP ĐẶT XÂU KÝ TỰ 2: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int k; 13 | string s; 14 | cin >> k >> s; 15 | int a[30] = {}, MAX = 0; 16 | for (int i = 0; i < s.size(); i++) 17 | a[s[i] - 'A']++; 18 | for (int i = 0; i < 30; i++) 19 | MAX = max(MAX, a[i]); 20 | if (MAX * k > s.size() + 1) 21 | cout << -1 << endl; 22 | else 23 | cout << 1 << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA03015 - MUA LƯƠNG THỰC: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, s, m; 13 | cin >> n >> s >> m; 14 | if (s * m > (s - s / 7) * n) 15 | cout << -1 << endl; 16 | else 17 | { 18 | for (int i = 1; i <= s - s / 7; i++) 19 | { 20 | if (n * i >= s * m) 21 | { 22 | cout << i << '\n'; 23 | break; 24 | } 25 | } 26 | } 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA03019 - PHÂN SỐ ĐƠN VỊ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | long long a, b, n, m, x; 13 | cin >> a >> b; 14 | while (b % a != 0) 15 | { 16 | n = a; 17 | m = b; 18 | x = b / a; 19 | cout << 1 << "/" << x + 1 << " + "; 20 | a = (x + 1) * n - m; 21 | b = (x + 1) * b; 22 | } 23 | cout << 1 << "/" << b / a; 24 | cout << '\n'; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA03027 - GIÁ TRỊ LỚN NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | long long x, s = 0; 10 | cin >> n; 11 | for (int i = 0; i < n; i++) 12 | { 13 | cin >> x; 14 | s += x + abs(x); 15 | } 16 | cout << s; 17 | } 18 | /* Do Xuan Huong 19 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 20 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 21 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 23 | @@@@@@@@@@##########################################@@@@@@@@@ 24 | @@@@@@@@##############################################@@@@@@@ 25 | @@@@@@#################################################@@@@@@ 26 | @@@@@####################################################@@@@ 27 | @@@%#####################@@@@@@@@@@@######################@@@ 28 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 29 | @@##################@@@@@@ @@@@@@##################@@ 30 | @@#################@@@@@ @@@@###################@ 31 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 32 | @ &@@@@ @@@@ .......@@ 33 | @@ @@@@@@ @@@@@@ .......@@ 34 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 35 | @@@ @@@@@@@@@@@ ......@@@@ 36 | @@@@ ......@@@@@ 37 | @@@@@@ ......@@@@@@ 38 | @@@@@@@ .....@@@@@@@@ 39 | @@@@@@@@@ .....@@@@@@@@@@ 40 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 41 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 42 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 44 | */ 45 | -------------------------------------------------------------------------------- /DSA03035 - SẮP XẾP ĐƠN GIẢN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n, s = 0; 9 | cin >> n; 10 | vector a(n + 5), f(n + 5, 0); 11 | for (int i = 1; i <= n; i++) 12 | cin >> a[i]; 13 | for (int i = 1; i <= n; i++) 14 | { 15 | f[a[i]] = f[a[i] - 1] + 1; 16 | s = max(s, f[a[i]]); 17 | } 18 | cout << n - s; 19 | } 20 | /* Do Xuan Huong 21 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 25 | @@@@@@@@@@##########################################@@@@@@@@@ 26 | @@@@@@@@##############################################@@@@@@@ 27 | @@@@@@#################################################@@@@@@ 28 | @@@@@####################################################@@@@ 29 | @@@%#####################@@@@@@@@@@@######################@@@ 30 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 31 | @@##################@@@@@@ @@@@@@##################@@ 32 | @@#################@@@@@ @@@@###################@ 33 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 34 | @ &@@@@ @@@@ .......@@ 35 | @@ @@@@@@ @@@@@@ .......@@ 36 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 37 | @@@ @@@@@@@@@@@ ......@@@@ 38 | @@@@ ......@@@@@ 39 | @@@@@@ ......@@@@@@ 40 | @@@@@@@ .....@@@@@@@@ 41 | @@@@@@@@@ .....@@@@@@@@@@ 42 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 46 | */ 47 | -------------------------------------------------------------------------------- /DSA04001 - LŨY THỪA: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | long long mod = 1e9 + 7; 5 | long long poww(long long n, long long k) 6 | { 7 | if (k == 1) 8 | return n; 9 | long long x = poww(n, k / 2); 10 | if (k % 2 == 0) 11 | return (x * x) % mod; 12 | else 13 | return (((x * x) % mod) * n) % mod; 14 | } 15 | int main() 16 | { 17 | ios_base::sync_with_stdio(0); 18 | cin.tie(0); 19 | int t; 20 | cin >> t; 21 | while (t--) 22 | { 23 | long long n, k; 24 | cin >> n >> k; 25 | cout << poww(n, k) << endl; 26 | } 27 | } 28 | /* Do Xuan Huong 29 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 33 | @@@@@@@@@@##########################################@@@@@@@@@ 34 | @@@@@@@@##############################################@@@@@@@ 35 | @@@@@@#################################################@@@@@@ 36 | @@@@@####################################################@@@@ 37 | @@@%#####################@@@@@@@@@@@######################@@@ 38 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 39 | @@##################@@@@@@ @@@@@@##################@@ 40 | @@#################@@@@@ @@@@###################@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 42 | @ &@@@@ @@@@ .......@@ 43 | @@ @@@@@@ @@@@@@ .......@@ 44 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 45 | @@@ @@@@@@@@@@@ ......@@@@ 46 | @@@@ ......@@@@@ 47 | @@@@@@ ......@@@@@@ 48 | @@@@@@@ .....@@@@@@@@ 49 | @@@@@@@@@ .....@@@@@@@@@@ 50 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 54 | */ 55 | -------------------------------------------------------------------------------- /DSA04003 - ĐẾM DÃY: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | long long mod = 123456789; 5 | long long poww(long long n, long long k) 6 | { 7 | if (k == 1) 8 | return n; 9 | long long x = poww(n, k / 2); 10 | if (k % 2 == 0) 11 | return (x * x) % mod; 12 | else 13 | return (((x * x) % mod) * n) % mod; 14 | } 15 | int main() 16 | { 17 | ios_base::sync_with_stdio(0); 18 | cin.tie(0); 19 | int t; 20 | cin >> t; 21 | while (t--) 22 | { 23 | long long n; 24 | cin >> n; 25 | cout << poww(2, n - 1) << endl; 26 | } 27 | } 28 | /* Do Xuan Huong 29 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 33 | @@@@@@@@@@##########################################@@@@@@@@@ 34 | @@@@@@@@##############################################@@@@@@@ 35 | @@@@@@#################################################@@@@@@ 36 | @@@@@####################################################@@@@ 37 | @@@%#####################@@@@@@@@@@@######################@@@ 38 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 39 | @@##################@@@@@@ @@@@@@##################@@ 40 | @@#################@@@@@ @@@@###################@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 42 | @ &@@@@ @@@@ .......@@ 43 | @@ @@@@@@ @@@@@@ .......@@ 44 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 45 | @@@ @@@@@@@@@@@ ......@@@@ 46 | @@@@ ......@@@@@ 47 | @@@@@@ ......@@@@@@ 48 | @@@@@@@ .....@@@@@@@@ 49 | @@@@@@@@@ .....@@@@@@@@@@ 50 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 54 | */ 55 | -------------------------------------------------------------------------------- /DSA04010 - DÃY CON LIÊN TIẾP CÓ TỔNG LỚN NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int x, ans = 0, s = 0; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> x; 18 | s += x; 19 | ans = max(ans, s); 20 | if (s < 0) 21 | s = 0; 22 | } 23 | cout << ans << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA04011 - TÍCH HAI SỐ NHỊ PHÂN: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string a, b; 10 | cin >> a >> b; 11 | long long s1 = 0, s2 = 0; 12 | long long n1 = a.size(), n2 = b.size(); 13 | for (long long i = n1 - 1; i >= 0; i--) 14 | s1 += (a[i] - '0') * pow(2, n1 - i - 1); 15 | for (long long i = n2 - 1; i >= 0; i--) 16 | s2 += (b[i] - '0') * pow(2, n2 - i - 1); 17 | cout << s1 * s2 << endl; 18 | } 19 | } 20 | /* Do Xuan Huong 21 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 25 | @@@@@@@@@@##########################################@@@@@@@@@ 26 | @@@@@@@@##############################################@@@@@@@ 27 | @@@@@@#################################################@@@@@@ 28 | @@@@@####################################################@@@@ 29 | @@@%#####################@@@@@@@@@@@######################@@@ 30 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 31 | @@##################@@@@@@ @@@@@@##################@@ 32 | @@#################@@@@@ @@@@###################@ 33 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 34 | @ &@@@@ @@@@ .......@@ 35 | @@ @@@@@@ @@@@@@ .......@@ 36 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 37 | @@@ @@@@@@@@@@@ ......@@@@ 38 | @@@@ ......@@@@@ 39 | @@@@@@ ......@@@@@@ 40 | @@@@@@@ .....@@@@@@@@ 41 | @@@@@@@@@ .....@@@@@@@@@@ 42 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 46 | */ 47 | -------------------------------------------------------------------------------- /DSA04015 - TÍNH FLOOR(X): -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | vector a(n + 2); 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | a[n + 1] = 1e18; 18 | int ans = lower_bound(a.begin(), a.end() - 1, k) - a.begin(); 19 | if (a[ans] != k) 20 | ans--; 21 | if (ans != -1) 22 | ans++; 23 | cout << ans << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA04017 - PHẦN TỬ KHÁC NHAU: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], b[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | for (int i = 0; i < n - 1; i++) 18 | cin >> b[i]; 19 | for (int i = 0; i < n; i++) 20 | { 21 | if (a[i] != b[i]) 22 | { 23 | cout << i + 1 << endl; 24 | break; 25 | } 26 | } 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA04018 - ĐẾM SỐ 0: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | int m = lower_bound(a, a + n, 1) - a; 18 | cout << m << endl; 19 | } 20 | } 21 | /* Do Xuan Huong 22 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 26 | @@@@@@@@@@##########################################@@@@@@@@@ 27 | @@@@@@@@##############################################@@@@@@@ 28 | @@@@@@#################################################@@@@@@ 29 | @@@@@####################################################@@@@ 30 | @@@%#####################@@@@@@@@@@@######################@@@ 31 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 32 | @@##################@@@@@@ @@@@@@##################@@ 33 | @@#################@@@@@ @@@@###################@ 34 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 35 | @ &@@@@ @@@@ .......@@ 36 | @@ @@@@@@ @@@@@@ .......@@ 37 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 38 | @@@ @@@@@@@@@@@ ......@@@@ 39 | @@@@ ......@@@@@ 40 | @@@@@@ ......@@@@@@ 41 | @@@@@@@ .....@@@@@@@@ 42 | @@@@@@@@@ .....@@@@@@@@@@ 43 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 47 | */ 48 | -------------------------------------------------------------------------------- /DSA04020 - TÌM KIẾM NHỊ PHÂN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | } 19 | int m = lower_bound(a, a + n, k) - a; 20 | if (a[m] != k) 21 | cout << "NO" << endl; 22 | else 23 | cout << m + 1 << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA04023 - KHOẢNG CÁCH NHỎ HƠN K: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | long long s = 0; 14 | cin >> n >> k; 15 | int a[n]; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | sort(a, a + n); 19 | for (int i = 0; i < n; i++) 20 | { 21 | int x = lower_bound(a + i + 1, a + n, a[i] + k) - a; 22 | s += x - i - 1; 23 | } 24 | cout << s << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA05004 - DÃY CON TĂNG DÀI NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int n; 6 | cin >> n; 7 | int a[n], l[n], ans = 0; 8 | for (int i = 0; i < n; i++) 9 | { 10 | cin >> a[i]; 11 | l[i] = 1; 12 | for (int j = 0; j < i; j++) 13 | { 14 | if (a[i] > a[j] && l[i] <= l[j]) 15 | l[i] = l[j] + 1; 16 | } 17 | ans = max(ans, l[i]); 18 | } 19 | cout << ans; 20 | } 21 | /* Do Xuan Huong 22 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 26 | @@@@@@@@@@##########################################@@@@@@@@@ 27 | @@@@@@@@##############################################@@@@@@@ 28 | @@@@@@#################################################@@@@@@ 29 | @@@@@####################################################@@@@ 30 | @@@%#####################@@@@@@@@@@@######################@@@ 31 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 32 | @@##################@@@@@@ @@@@@@##################@@ 33 | @@#################@@@@@ @@@@###################@ 34 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 35 | @ &@@@@ @@@@ .......@@ 36 | @@ @@@@@@ @@@@@@ .......@@ 37 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 38 | @@@ @@@@@@@@@@@ ......@@@@ 39 | @@@@ ......@@@@@ 40 | @@@@@@ ......@@@@@@ 41 | @@@@@@@ .....@@@@@@@@ 42 | @@@@@@@@@ .....@@@@@@@@@@ 43 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 47 | */ 48 | -------------------------------------------------------------------------------- /DSA05006 - TỔNG LỚN NHẤT CỦA DÃY CON TĂNG DẦN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], l[n], ans = 0; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | l[i] = a[i]; 19 | for (int j = 0; j < i; j++) 20 | if (a[i] > a[j]) 21 | l[i] = max(l[i], l[j] + a[i]); 22 | ans = max(ans, l[i]); 23 | } 24 | cout << ans << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA05007 - TỔNG LỚN NHẤT CỦA DÃY CON KHÔNG KỀ NHAU: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n + 2]; 15 | a[0] = a[1] = 0; 16 | for (int i = 2; i <= n + 1; i++) 17 | { 18 | cin >> a[i]; 19 | a[i] = max(a[i] + a[i - 2], a[i - 1]); 20 | } 21 | cout << max(a[n], a[n + 1]) << endl; 22 | } 23 | } 24 | /* Do Xuan Huong 25 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 29 | @@@@@@@@@@##########################################@@@@@@@@@ 30 | @@@@@@@@##############################################@@@@@@@ 31 | @@@@@@#################################################@@@@@@ 32 | @@@@@####################################################@@@@ 33 | @@@%#####################@@@@@@@@@@@######################@@@ 34 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 35 | @@##################@@@@@@ @@@@@@##################@@ 36 | @@#################@@@@@ @@@@###################@ 37 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 38 | @ &@@@@ @@@@ .......@@ 39 | @@ @@@@@@ @@@@@@ .......@@ 40 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 41 | @@@ @@@@@@@@@@@ ......@@@@ 42 | @@@@ ......@@@@@ 43 | @@@@@@ ......@@@@@@ 44 | @@@@@@@ .....@@@@@@@@ 45 | @@@@@@@@@ .....@@@@@@@@@@ 46 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 50 | */ 51 | -------------------------------------------------------------------------------- /DSA05012 - TỔ HỢP C(n, k): -------------------------------------------------------------------------------- 1 | #include 2 | int a[1001][1001], mod = 1e9 + 7; 3 | int main() 4 | { 5 | a[0][0] = 1; 6 | for (int i = 1; i < 1001; i++) 7 | { 8 | a[i][0] = 1; 9 | for (int j = 1; j < 1001; j++) 10 | a[i][j] = (a[i - 1][j - 1] % mod + a[i - 1][j] % mod) % mod; 11 | } 12 | int t; 13 | scanf("%d", &t); 14 | while (t--) 15 | { 16 | int n, k; 17 | scanf("%d%d", &n, &k); 18 | printf("%d\n", a[n][k]); 19 | } 20 | } 21 | /* Do Xuan Huong 22 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 26 | @@@@@@@@@@##########################################@@@@@@@@@ 27 | @@@@@@@@##############################################@@@@@@@ 28 | @@@@@@#################################################@@@@@@ 29 | @@@@@####################################################@@@@ 30 | @@@%#####################@@@@@@@@@@@######################@@@ 31 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 32 | @@##################@@@@@@ @@@@@@##################@@ 33 | @@#################@@@@@ @@@@###################@ 34 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 35 | @ &@@@@ @@@@ .......@@ 36 | @@ @@@@@@ @@@@@@ .......@@ 37 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 38 | @@@ @@@@@@@@@@@ ......@@@@ 39 | @@@@ ......@@@@@ 40 | @@@@@@ ......@@@@@@ 41 | @@@@@@@ .....@@@@@@@@ 42 | @@@@@@@@@ .....@@@@@@@@@@ 43 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 47 | */ 48 | -------------------------------------------------------------------------------- /DSA05015 - TÍNH P(N,K): -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | long long P[1001][1001] = {}, mod = 1e9 + 7; 9 | for (int i = 1; i <= 1000; i++) 10 | P[i][1] = i; 11 | for (int i = 2; i <= 1000; i++) 12 | for (int j = 2; j <= i; j++) 13 | P[i][j] = (P[i - 1][j - 1] * i) % mod; 14 | int t; 15 | cin >> t; 16 | while (t--) 17 | { 18 | int n, k; 19 | cin >> n >> k; 20 | cout << P[n][k] << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA05018 - XÂU CON ĐỐI XỨNG DÀI NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | string s; 13 | cin >> s; 14 | int n = s.size(), ans = 1; 15 | vector> a(n, vector(n)); 16 | for (int i = 0; i < n; i++) 17 | a[i][i] = 1; 18 | for (int i = 1; i < n; i++) 19 | for (int j = 0; j < n - i; j++) 20 | { 21 | int k = i + j; 22 | a[j][k] = ((j + 1 > k - 1 || a[j + 1][k - 1]) && s[j] == s[k]); 23 | if (a[j][k]) 24 | ans = i + 1; 25 | } 26 | cout << ans << endl; 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA05022 - KÝ TỰ GIỐNG NHAU: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, x, y, z; 13 | cin >> n >> x >> y >> z; 14 | int a[n + 2]; 15 | a[1] = x; 16 | a[2] = a[1] + min(x, z); 17 | for (int i = 3; i <= n + 1; i++) 18 | { 19 | a[i] = a[i - 1] + x; 20 | if (i % 2 == 0) 21 | a[i] = min(a[i], a[i / 2] + z); 22 | a[i - 1] = min(a[i - 1], a[i] + y); 23 | } 24 | cout << a[n] << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA05023 - TỔNG CÁC XÂU CON: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | string a; 13 | cin >> a; 14 | long long ans = 0, k = 1, n = a.size(), s; 15 | for (int i = a.size() - 1; i >= 0; i--) 16 | { 17 | s = (long long)(a[i] - '0') * k; 18 | s *= n; 19 | ans += s; 20 | k = k * 10 + 1; 21 | n--; 22 | } 23 | cout << ans << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA05024 - TỔNG BẰNG K: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n]; 15 | long long f[k + 1] = {}, mod = 1e9 + 7; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | f[0] = 1; 19 | for (int i = 1; i <= k; i++) 20 | for (int j = 0; j < n; j++) 21 | if (i >= a[j]) 22 | f[i] = (f[i] + f[i - a[j]]) % mod; 23 | cout << f[k] << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA05025 - CON ẾCH: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | int n; 10 | cin >> n; 11 | long long a[n] = {}, b[n]; 12 | for (int i = 0; i < min(n, 3); i++) 13 | a[i] = 1; 14 | b[0] = 1; 15 | for (int i = 1; i < n; i++) 16 | { 17 | if (i <= 3) 18 | a[i] = (a[i] + b[i - 1]); 19 | else 20 | a[i] += b[i - 1] - b[i - 4]; 21 | b[i] = b[i - 1] + a[i]; 22 | } 23 | cout << a[n - 1] << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA05026 - XEM PHIM: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int s, n; 9 | cin >> s >> n; 10 | int a[n + 1]; 11 | for (int i = 1; i <= n; i++) 12 | cin >> a[i]; 13 | vector> l(n + 1, vector(s + 1, 0)); 14 | for (int i = 1; i <= n; i++) 15 | for (int j = 1; j <= s; j++) 16 | if (a[i] <= j) 17 | l[i][j] = max(l[i - 1][j - a[i]] + a[i], l[i - 1][j]); 18 | else 19 | l[i][j] = l[i - 1][j]; 20 | cout << l[n][s]; 21 | } 22 | /* Do Xuan Huong 23 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 27 | @@@@@@@@@@##########################################@@@@@@@@@ 28 | @@@@@@@@##############################################@@@@@@@ 29 | @@@@@@#################################################@@@@@@ 30 | @@@@@####################################################@@@@ 31 | @@@%#####################@@@@@@@@@@@######################@@@ 32 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 33 | @@##################@@@@@@ @@@@@@##################@@ 34 | @@#################@@@@@ @@@@###################@ 35 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 36 | @ &@@@@ @@@@ .......@@ 37 | @@ @@@@@@ @@@@@@ .......@@ 38 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 39 | @@@ @@@@@@@@@@@ ......@@@@ 40 | @@@@ ......@@@@@ 41 | @@@@@@ ......@@@@@@ 42 | @@@@@@@ .....@@@@@@@@ 43 | @@@@@@@@@ .....@@@@@@@@@@ 44 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 48 | */ 49 | -------------------------------------------------------------------------------- /DSA05030 - DI CHUYỂN VỀ GỐC TỌA ĐỘ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m; 13 | cin >> n >> m; 14 | vector> a(n + 1, vector(m + 1, 1)); 15 | for (int i = n - 1; i >= 0; i--) 16 | for (int j = m - 1; j >= 0; j--) 17 | a[i][j] = a[i + 1][j] + a[i][j + 1]; 18 | cout << a[0][0] << endl; 19 | } 20 | } 21 | /* Do Xuan Huong 22 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 26 | @@@@@@@@@@##########################################@@@@@@@@@ 27 | @@@@@@@@##############################################@@@@@@@ 28 | @@@@@@#################################################@@@@@@ 29 | @@@@@####################################################@@@@ 30 | @@@%#####################@@@@@@@@@@@######################@@@ 31 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 32 | @@##################@@@@@@ @@@@@@##################@@ 33 | @@#################@@@@@ @@@@###################@ 34 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 35 | @ &@@@@ @@@@ .......@@ 36 | @@ @@@@@@ @@@@@@ .......@@ 37 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 38 | @@@ @@@@@@@@@@@ ......@@@@ 39 | @@@@ ......@@@@@ 40 | @@@@@@ ......@@@@@@ 41 | @@@@@@@ .....@@@@@@@@ 42 | @@@@@@@@@ .....@@@@@@@@@@ 43 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 47 | */ 48 | -------------------------------------------------------------------------------- /DSA05031 - TỔNG BÌNH PHƯƠNG: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n + 1]; 15 | a[0] = 0; 16 | for (int i = 1; i <= n; i++) 17 | { 18 | a[i] = 1e9; 19 | for (int j = 1; j <= sqrt(i); j++) 20 | if (a[i - j * j] != 1e9) 21 | a[i] = min(a[i], a[i - j * j] + 1); 22 | } 23 | cout << a[n] << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA05032 - XÂU ĐỐI XỨNG 1: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string s; 10 | cin >> s; 11 | int n = s.size(); 12 | int f[n][n]; 13 | for (int i = 0; i < n; i++) 14 | f[i][i] = 1; 15 | for (int k = 2; k <= n; k++) 16 | { 17 | for (int i = 0; i < n - k + 1; i++) 18 | { 19 | int j = i + k - 1; 20 | if (s[i] == s[j] && k == 2) 21 | f[i][j] = 2; 22 | else if (s[i] == s[j]) 23 | f[i][j] = f[i + 1][j - 1] + 2; 24 | else 25 | f[i][j] = max(f[i + 1][j], f[i][j - 1]); 26 | } 27 | } 28 | cout << n - f[0][n - 1] << endl; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /DSA05033 - XÂU ĐỐI XỨNG 2: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string s; 10 | cin >> s; 11 | int n = s.size(); 12 | int f[n][n]; 13 | for (int i = 0; i < n; i++) 14 | f[i][i] = 1; 15 | for (int k = 2; k <= n; k++) 16 | { 17 | for (int i = 0; i < n - k + 1; i++) 18 | { 19 | int j = i + k - 1; 20 | if (s[i] == s[j] && k == 2) 21 | f[i][j] = 2; 22 | else if (s[i] == s[j]) 23 | f[i][j] = f[i + 1][j - 1] + 2; 24 | else 25 | f[i][j] = max(f[i + 1][j], f[i][j - 1]); 26 | } 27 | } 28 | cout << n - f[0][n - 1] << endl; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /DSA05038 - DÃY CON TĂNG DÀI NHẤT 2 CHIỀU: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int n, ans; 4 | pair a; 5 | set> s[100000]; 6 | bool check(const pair a, const pair b) 7 | { 8 | return ((a.first < b.first) && (a.second < b.second)); 9 | } 10 | bool kt(set> &st) 11 | { 12 | for (set>::iterator i = st.begin(); i != st.end(); i++) 13 | { 14 | if (check(*i, a)) 15 | return 1; 16 | else if (i->first >= a.first) 17 | break; 18 | } 19 | return 0; 20 | } 21 | int binary_search(int l, int r) 22 | { 23 | while (l < r) 24 | { 25 | int m = (l + r) / 2; 26 | if (kt(s[m])) 27 | l = m + 1; 28 | else 29 | r = m; 30 | } 31 | return l; 32 | } 33 | int main() 34 | { 35 | cin >> n; 36 | for (int i = 0; i < n; i++) 37 | { 38 | cin >> a.first >> a.second; 39 | int pos = binary_search(0, n); 40 | if (pos < n) 41 | { 42 | set>::iterator k = ++s[pos].insert(a).first; 43 | while (k != s[pos].end()) 44 | { 45 | if (check(a, *k)) 46 | s[pos].erase(k++); 47 | else 48 | k++; 49 | } 50 | } 51 | } 52 | while (ans < n && s[ans].size()) 53 | ans++; 54 | cout << ans; 55 | } 56 | -------------------------------------------------------------------------------- /DSA05041 - BIẾN ĐỔI VỀ XÂU ĐỐI XỨNG: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string s; 10 | cin >> s; 11 | int n = s.size(); 12 | int f[n][n]; 13 | for (int i = 0; i < n; i++) 14 | f[i][i] = 1; 15 | for (int k = 2; k <= n; k++) 16 | { 17 | for (int i = 0; i < n - k + 1; i++) 18 | { 19 | int j = i + k - 1; 20 | if (s[i] == s[j] && k == 2) 21 | f[i][j] = 2; 22 | else if (s[i] == s[j]) 23 | f[i][j] = f[i + 1][j - 1] + 2; 24 | else 25 | f[i][j] = max(f[i + 1][j], f[i][j - 1]); 26 | } 27 | } 28 | cout << n - f[0][n - 1] << endl; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /DSA05043 - SỐ THUẬN NGHỊCH: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | bool a[1001][1001]; 4 | int main() 5 | { 6 | int t; 7 | cin >> t; 8 | while (t--) 9 | { 10 | string s; 11 | cin >> s; 12 | int n = s.size(), ans = 1; 13 | for (int i = 0; i < n; i++) 14 | a[i][i] = 1; 15 | for (int i = 1; i < n; i++) 16 | { 17 | for (int j = 0; j < n - 1; j++) 18 | { 19 | int k = i + j; 20 | if (i + j < n) 21 | { 22 | a[j][k] = ((j + 1 > k - 1 || a[j + 1][k - 1]) && s[j] == s[k]); 23 | if (a[j][k]) 24 | ans = i + 1; 25 | } 26 | } 27 | } 28 | cout << ans << endl; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /DSA05047 - CHỌN Ô: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | int n, ans = -1e9, s = -1e9; 10 | cin >> n; 11 | int a[4][n + 1], f[n + 1][11] = {}, d[] = {0, 1, 2, 4, 5, 8, 9, 10}; 12 | for (int i = 0; i < 4; i++) 13 | for (int j = 1; j <= n; j++) 14 | cin >> a[i][j]; 15 | for (int j = 1; j <= n; j++) 16 | { 17 | for (int k = 0; k < 8; k++) 18 | { 19 | for (int i = 0; i < 4; i++) 20 | if (d[k] & (1 << i)) 21 | f[j][d[k]] += a[i][j]; 22 | int x = -1e9; 23 | for (int i = 0; i < 8; i++) 24 | if ((d[k] | d[i]) == (d[k] ^ d[i])) 25 | x = max(x, f[j - 1][d[i]]); 26 | f[j][d[k]] += x; 27 | } 28 | } 29 | for (int i = 0; i < 8; i++) 30 | s = max(f[n][d[i]], s); 31 | for (int i = 0; i < 4; i++) 32 | for (int j = 1; j <= n; j++) 33 | ans = max(ans, a[i][j]); 34 | if (ans < 0) 35 | cout << ans << endl; 36 | else 37 | cout << s << endl; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /DSA06003 - ĐỔI CHỖ ÍT NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k, ans = 0; 13 | cin >> n; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | for (int i = 0; i < n - 1; i++) 18 | { 19 | k = i; 20 | for (int j = i + 1; j < n; j++) 21 | if (a[j] < a[k]) 22 | k = j; 23 | if (k != i) 24 | ans++; 25 | swap(a[k], a[i]); 26 | } 27 | cout << ans << endl; 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA06006 - SẮP XẾP [0 1 2]: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, x, a[3] = {}; 13 | cin >> n; 14 | for (int i = 0; i < n; i++) 15 | { 16 | cin >> x; 17 | a[x]++; 18 | } 19 | for (int i = 0; i < 3; i++) 20 | { 21 | for (int j = 0; j < a[i]; j++) 22 | { 23 | cout << i << " "; 24 | } 25 | } 26 | cout << endl; 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA06009 - CẶP SỐ TỔNG BẰNG K: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k, x, s = 0; 13 | cin >> n >> k; 14 | int a[n]; 15 | map m; 16 | for (int i = 0; i < n; i++) 17 | { 18 | cin >> x; 19 | m[x]++; 20 | } 21 | for (auto i : m) 22 | { 23 | if (i.first * 2 == k) 24 | s += i.second * (i.second - 1); 25 | else 26 | s += i.second * m[k - i.first]; 27 | } 28 | s /= 2; 29 | cout << s << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA06010 - SẮP XẾP CHỮ SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, x, a[10] = {}; 13 | cin >> n; 14 | for (int i = 0; i < n; i++) 15 | { 16 | cin >> x; 17 | while (x != 0) 18 | { 19 | int k = x % 10; 20 | a[k]++; 21 | x /= 10; 22 | } 23 | } 24 | for (int i = 0; i < 10; i++) 25 | { 26 | if (a[i] > 0) 27 | cout << i << " "; 28 | } 29 | cout << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA06011 - TỔNG GẦN 0 NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, s = 1e7; 13 | cin >> n; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | for (int i = 0; i < n - 1; i++) 18 | { 19 | for (int j = i + 1; j < n; j++) 20 | { 21 | if (abs(a[i] + a[j]) < abs(s)) 22 | s = a[i] + a[j]; 23 | } 24 | } 25 | cout << s << endl; 26 | } 27 | } 28 | /* Do Xuan Huong 29 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 33 | @@@@@@@@@@##########################################@@@@@@@@@ 34 | @@@@@@@@##############################################@@@@@@@ 35 | @@@@@@#################################################@@@@@@ 36 | @@@@@####################################################@@@@ 37 | @@@%#####################@@@@@@@@@@@######################@@@ 38 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 39 | @@##################@@@@@@ @@@@@@##################@@ 40 | @@#################@@@@@ @@@@###################@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 42 | @ &@@@@ @@@@ .......@@ 43 | @@ @@@@@@ @@@@@@ .......@@ 44 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 45 | @@@ @@@@@@@@@@@ ......@@@@ 46 | @@@@ ......@@@@@ 47 | @@@@@@ ......@@@@@@ 48 | @@@@@@@ .....@@@@@@@@ 49 | @@@@@@@@@ .....@@@@@@@@@@ 50 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 54 | */ 55 | -------------------------------------------------------------------------------- /DSA06012 - PHẦN TỬ LỚN NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | } 19 | sort(a, a + n); 20 | for (int i = n - 1; i >= n - k; i--) 21 | { 22 | cout << a[i] << " "; 23 | } 24 | cout << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA06013 - SỐ LẦN XUẤT HIỆN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k, s = 0; 13 | cin >> n >> k; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | if (a[i] == k) 19 | s++; 20 | } 21 | if (s == 0) 22 | cout << -1 << endl; 23 | else 24 | cout << s << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA06015 - MERGE SORT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | vector a(n); 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | sort(a.begin(), a.end()); 18 | for (int i = 0; i < n; i++) 19 | cout << a[i] << " "; 20 | cout << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA06016 - TÍCH LỚN NHẤT - NHỎ NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m, x, maxa = -1e9, minb = 1e9; 13 | cin >> n >> m; 14 | for (int i = 0; i < n; i++) 15 | { 16 | cin >> x; 17 | maxa = max(maxa, x); 18 | } 19 | for (int i = 0; i < m; i++) 20 | { 21 | cin >> x; 22 | minb = min(minb, x); 23 | } 24 | cout << (long long)maxa * minb << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA06017 - TRỘN HAI DÃY: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m; 13 | cin >> n >> m; 14 | vector a(n + m); 15 | for (int i = 0; i < n + m; i++) 16 | cin >> a[i]; 17 | sort(a.begin(), a.end()); 18 | for (int i = 0; i < n + m; i++) 19 | cout << a[i] << " "; 20 | cout << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA06018 - BỔ SUNG PHẦN TỬ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, s = 0; 13 | cin >> n; 14 | int a[n]; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | sort(a, a + n); 18 | for (int i = 1; i < n; i++) 19 | if (a[i] != a[i - 1]) 20 | s += a[i] - a[i - 1] - 1; 21 | cout << s << endl; 22 | } 23 | } 24 | /* Do Xuan Huong 25 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 29 | @@@@@@@@@@##########################################@@@@@@@@@ 30 | @@@@@@@@##############################################@@@@@@@ 31 | @@@@@@#################################################@@@@@@ 32 | @@@@@####################################################@@@@ 33 | @@@%#####################@@@@@@@@@@@######################@@@ 34 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 35 | @@##################@@@@@@ @@@@@@##################@@ 36 | @@#################@@@@@ @@@@###################@ 37 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 38 | @ &@@@@ @@@@ .......@@ 39 | @@ @@@@@@ @@@@@@ .......@@ 40 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 41 | @@@ @@@@@@@@@@@ ......@@@@ 42 | @@@@ ......@@@@@ 43 | @@@@@@ ......@@@@@@ 44 | @@@@@@@ .....@@@@@@@@ 45 | @@@@@@@@@ .....@@@@@@@@@@ 46 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 50 | */ 51 | -------------------------------------------------------------------------------- /DSA06020 - TÌM KIẾM: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, x, k, ans = -1; 13 | cin >> n >> k; 14 | for (int i = 0; i < n; i++) 15 | { 16 | cin >> x; 17 | if (x == k) 18 | ans = 1; 19 | } 20 | cout << ans << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA06021 - TÌM KIẾM TRONG DÃY SẮP XẾP VÒNG: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k, x, pos; 13 | cin >> n >> k; 14 | for (int i = 0; i < n; i++) 15 | { 16 | cin >> x; 17 | if (x == k) 18 | pos = i; 19 | } 20 | cout << pos + 1 << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA06022 - SỐ NHỎ NHẤT VÀ NHỎ THỨ HAI: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, min1 = 1e9, min2 = 1e9; 13 | cin >> n; 14 | vector a(n); 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | min1 = min(min1, a[i]); 19 | } 20 | for (int i = 0; i < n; i++) 21 | { 22 | if (a[i] < min2 && a[i] > min1) 23 | min2 = a[i]; 24 | } 25 | if (min2 == 1e9) 26 | cout << -1 << endl; 27 | else 28 | cout << min1 << " " << min2 << endl; 29 | } 30 | } 31 | /* Do Xuan Huong 32 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 36 | @@@@@@@@@@##########################################@@@@@@@@@ 37 | @@@@@@@@##############################################@@@@@@@ 38 | @@@@@@#################################################@@@@@@ 39 | @@@@@####################################################@@@@ 40 | @@@%#####################@@@@@@@@@@@######################@@@ 41 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 42 | @@##################@@@@@@ @@@@@@##################@@ 43 | @@#################@@@@@ @@@@###################@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 45 | @ &@@@@ @@@@ .......@@ 46 | @@ @@@@@@ @@@@@@ .......@@ 47 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 48 | @@@ @@@@@@@@@@@ ......@@@@ 49 | @@@@ ......@@@@@ 50 | @@@@@@ ......@@@@@@ 51 | @@@@@@@ .....@@@@@@@@ 52 | @@@@@@@@@ .....@@@@@@@@@@ 53 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 57 | */ 58 | -------------------------------------------------------------------------------- /DSA06023 - SẮP XẾP ĐỔI CHỖ TRỰC TIẾP: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | cin >> n; 10 | int a[n]; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | for (int i = 0; i < n - 1; i++) 14 | { 15 | for (int j = i + 1; j < n; j++) 16 | { 17 | if (a[i] > a[j]) 18 | swap(a[i], a[j]); 19 | } 20 | cout << "Buoc " << i + 1 << ": "; 21 | for (int j = 0; j < n; j++) 22 | cout << a[j] << " "; 23 | cout << endl; 24 | } 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DSA06024 - SẮP XẾP CHỌN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | cin >> n; 10 | int a[n]; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | 14 | for (int i = 0; i < n - 1; i++) 15 | { 16 | int k = i; 17 | for (int j = i + 1; j < n; j++) 18 | if (a[j] < a[k]) 19 | k = j; 20 | swap(a[k], a[i]); 21 | cout << "Buoc " << i + 1 << ": "; 22 | for (int j = 0; j < n; j++) 23 | cout << a[j] << " "; 24 | cout << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA06025 - SẮP XẾP CHÈN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | cin >> n; 10 | int a[n]; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | for (int i = 0; i < n; i++) 14 | { 15 | int k = a[i]; 16 | int j = i - 1; 17 | while (j >= 0 && a[j] > k) 18 | { 19 | a[j + 1] = a[j]; 20 | j = j - 1; 21 | } 22 | a[j + 1] = k; 23 | cout << "Buoc " << i << ": "; 24 | for (j = 0; j <= i; j++) 25 | cout << a[j] << " "; 26 | cout << endl; 27 | } 28 | } 29 | /* Do Xuan Huong 30 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 34 | @@@@@@@@@@##########################################@@@@@@@@@ 35 | @@@@@@@@##############################################@@@@@@@ 36 | @@@@@@#################################################@@@@@@ 37 | @@@@@####################################################@@@@ 38 | @@@%#####################@@@@@@@@@@@######################@@@ 39 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 40 | @@##################@@@@@@ @@@@@@##################@@ 41 | @@#################@@@@@ @@@@###################@ 42 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 43 | @ &@@@@ @@@@ .......@@ 44 | @@ @@@@@@ @@@@@@ .......@@ 45 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 46 | @@@ @@@@@@@@@@@ ......@@@@ 47 | @@@@ ......@@@@@ 48 | @@@@@@ ......@@@@@@ 49 | @@@@@@@ .....@@@@@@@@ 50 | @@@@@@@@@ .....@@@@@@@@@@ 51 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 55 | */ 56 | -------------------------------------------------------------------------------- /DSA06026 - SẮP XẾP NỔI BỌT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n, b = 1; 9 | cin >> n; 10 | int a[n]; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | for (int i = 0; i < n - 1; i++) 14 | { 15 | bool k = false; 16 | for (int j = 0; j < n - i - 1; j++) 17 | { 18 | if (a[j] > a[j + 1]) 19 | { 20 | swap(a[j], a[j + 1]); 21 | k = true; 22 | } 23 | } 24 | if (k == false) 25 | break; 26 | cout << "Buoc " << b++ << ": "; 27 | for (int j = 0; j < n; j++) 28 | cout << a[j] << " "; 29 | cout << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA06031 - PHẦN TỬ LỚN NHẤT TRONG DÃY CON: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n]; 15 | deque st; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | for (int i = 0; i < n; ++i) 19 | { 20 | while (st.size() && a[st.back()] <= a[i]) 21 | st.pop_back(); 22 | st.push_back(i); 23 | if (st.front() + k <= i) 24 | st.pop_front(); 25 | if (i >= k - 1) 26 | cout << a[st.front()] << " "; 27 | } 28 | cout << endl; 29 | } 30 | } 31 | /* Do Xuan Huong 32 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 36 | @@@@@@@@@@##########################################@@@@@@@@@ 37 | @@@@@@@@##############################################@@@@@@@ 38 | @@@@@@#################################################@@@@@@ 39 | @@@@@####################################################@@@@ 40 | @@@%#####################@@@@@@@@@@@######################@@@ 41 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 42 | @@##################@@@@@@ @@@@@@##################@@ 43 | @@#################@@@@@ @@@@###################@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 45 | @ &@@@@ @@@@ .......@@ 46 | @@ @@@@@@ @@@@@@ .......@@ 47 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 48 | @@@ @@@@@@@@@@@ ......@@@@ 49 | @@@@ ......@@@@@ 50 | @@@@@@ ......@@@@@@ 51 | @@@@@@@ .....@@@@@@@@ 52 | @@@@@@@@@ .....@@@@@@@@@@ 53 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 57 | */ 58 | -------------------------------------------------------------------------------- /DSA06032 - BỘ BA SỐ CÓ TỔNG NHỎ HƠN K: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | long long s = 0; 14 | cin >> n >> k; 15 | long long a[n]; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | sort(a, a + n); 19 | for (int i = 0; i < n; i++) 20 | { 21 | for (int j = i + 1; j < n; j++) 22 | { 23 | int x = lower_bound(a + j + 1, a + n, k - a[i] - a[j]) - a; 24 | s += x - j - 1; 25 | } 26 | } 27 | cout << s << endl; 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA06034 - CẶP SỐ CÓ TỔNG BẰNG K: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | cin >> n >> k; 14 | int a[n]; 15 | long long s = 0; 16 | map m; 17 | for (int i = 0; i < n; i++) 18 | { 19 | cin >> a[i]; 20 | m[a[i]]++; 21 | } 22 | for (auto i : m) 23 | { 24 | if (i.first * 2 == k) 25 | s += i.second * (i.second - 1); 26 | else 27 | s += i.second * m[k - i.first]; 28 | } 29 | cout << s / 2 << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA06039 - SỐ ĐẦU TIÊN BỊ LẶP: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n + 1]; 15 | pair k; 16 | k.second = 1e9; 17 | map m; 18 | for (int i = 1; i <= n; i++) 19 | { 20 | cin >> a[i]; 21 | if (m[a[i]] == 0) 22 | m[a[i]] = i; 23 | else if (k.second > m[a[i]]) 24 | { 25 | k.first = a[i]; 26 | k.second = m[a[i]]; 27 | } 28 | } 29 | if (k.second != 1e9) 30 | cout << k.first << endl; 31 | else 32 | cout << "NO" << endl; 33 | } 34 | } 35 | /* Do Xuan Huong 36 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 38 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 39 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 40 | @@@@@@@@@@##########################################@@@@@@@@@ 41 | @@@@@@@@##############################################@@@@@@@ 42 | @@@@@@#################################################@@@@@@ 43 | @@@@@####################################################@@@@ 44 | @@@%#####################@@@@@@@@@@@######################@@@ 45 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 46 | @@##################@@@@@@ @@@@@@##################@@ 47 | @@#################@@@@@ @@@@###################@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 49 | @ &@@@@ @@@@ .......@@ 50 | @@ @@@@@@ @@@@@@ .......@@ 51 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 52 | @@@ @@@@@@@@@@@ ......@@@@ 53 | @@@@ ......@@@@@ 54 | @@@@@@ ......@@@@@@ 55 | @@@@@@@ .....@@@@@@@@ 56 | @@@@@@@@@ .....@@@@@@@@@@ 57 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 59 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 60 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 61 | */ 62 | -------------------------------------------------------------------------------- /DSA06041 - SỐ XUẤT HIỆN NHIỀU NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, x, s = 0; 13 | cin >> n; 14 | pair k; 15 | map m; 16 | for (int i = 0; i < n; i++) 17 | { 18 | cin >> x; 19 | m[x]++; 20 | } 21 | for (auto i : m) 22 | { 23 | if (i.second > s) 24 | { 25 | s = i.second; 26 | k = i; 27 | } 28 | } 29 | if (k.second > (float)n / 2) 30 | cout << k.first << endl; 31 | else 32 | cout << "NO" << endl; 33 | } 34 | } 35 | /* Do Xuan Huong 36 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 38 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 39 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 40 | @@@@@@@@@@##########################################@@@@@@@@@ 41 | @@@@@@@@##############################################@@@@@@@ 42 | @@@@@@#################################################@@@@@@ 43 | @@@@@####################################################@@@@ 44 | @@@%#####################@@@@@@@@@@@######################@@@ 45 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 46 | @@##################@@@@@@ @@@@@@##################@@ 47 | @@#################@@@@@ @@@@###################@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 49 | @ &@@@@ @@@@ .......@@ 50 | @@ @@@@@@ @@@@@@ .......@@ 51 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 52 | @@@ @@@@@@@@@@@ ......@@@@ 53 | @@@@ ......@@@@@ 54 | @@@@@@ ......@@@@@@ 55 | @@@@@@@ .....@@@@@@@@ 56 | @@@@@@@@@ .....@@@@@@@@@@ 57 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 59 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 60 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 61 | */ 62 | -------------------------------------------------------------------------------- /DSA06043 - ĐIỂM CÂN BẰNG: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], s = 0, k = 0, ans = -1; 15 | for (int i = 0; i < n; i++) 16 | { 17 | cin >> a[i]; 18 | s += a[i]; 19 | } 20 | for (int i = 0; i < n; i++) 21 | { 22 | if (k * 2 + a[i] == s) 23 | { 24 | ans = i + 1; 25 | break; 26 | } 27 | k += a[i]; 28 | } 29 | cout << ans << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA06046 - CHÊNH LỆCH NHỎ NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], s = 1e9; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | sort(a, a + n); 18 | for (int i = 1; i < n; i++) 19 | s = min(s, a[i] - a[i - 1]); 20 | cout << s << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DSA06048 - SỐ LẦN QUAY VÒNG: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], ans = 0; 15 | for (int i = 0; i < n; i++) 16 | cin >> a[i]; 17 | for (int i = 1; i < n; i++) 18 | { 19 | if (a[i] < a[i - 1]) 20 | { 21 | ans = i; 22 | break; 23 | } 24 | } 25 | cout << ans << endl; 26 | } 27 | } 28 | /* Do Xuan Huong 29 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 33 | @@@@@@@@@@##########################################@@@@@@@@@ 34 | @@@@@@@@##############################################@@@@@@@ 35 | @@@@@@#################################################@@@@@@ 36 | @@@@@####################################################@@@@ 37 | @@@%#####################@@@@@@@@@@@######################@@@ 38 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 39 | @@##################@@@@@@ @@@@@@##################@@ 40 | @@#################@@@@@ @@@@###################@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 42 | @ &@@@@ @@@@ .......@@ 43 | @@ @@@@@@ @@@@@@ .......@@ 44 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 45 | @@@ @@@@@@@@@@@ ......@@@@ 46 | @@@@ ......@@@@@ 47 | @@@@@@ ......@@@@@@ 48 | @@@@@@@ .....@@@@@@@@ 49 | @@@@@@@@@ .....@@@@@@@@@@ 50 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 54 | */ 55 | -------------------------------------------------------------------------------- /DSA06049 - ĐẾM CẶP: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, k; 13 | long long s = 0; 14 | cin >> n >> k; 15 | int a[n]; 16 | for (int i = 0; i < n; i++) 17 | cin >> a[i]; 18 | sort(a, a + n); 19 | for (int i = 0; i < n; i++) 20 | { 21 | int x = lower_bound(a + i + 1, a + n, a[i] + k) - a; 22 | s += x - i - 1; 23 | } 24 | cout << s << endl; 25 | } 26 | } 27 | /* Do Xuan Huong 28 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 32 | @@@@@@@@@@##########################################@@@@@@@@@ 33 | @@@@@@@@##############################################@@@@@@@ 34 | @@@@@@#################################################@@@@@@ 35 | @@@@@####################################################@@@@ 36 | @@@%#####################@@@@@@@@@@@######################@@@ 37 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 38 | @@##################@@@@@@ @@@@@@##################@@ 39 | @@#################@@@@@ @@@@###################@ 40 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 41 | @ &@@@@ @@@@ .......@@ 42 | @@ @@@@@@ @@@@@@ .......@@ 43 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 44 | @@@ @@@@@@@@@@@ ......@@@@ 45 | @@@@ ......@@@@@ 46 | @@@@@@ ......@@@@@@ 47 | @@@@@@@ .....@@@@@@@@ 48 | @@@@@@@@@ .....@@@@@@@@@@ 49 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 53 | */ 54 | -------------------------------------------------------------------------------- /DSA07024 - GHÉP VÁN GỖ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n], l[n], r[n], ans = 0; 15 | stack st; 16 | for (int i = 0; i < n; i++) 17 | { 18 | cin >> a[i]; 19 | while (st.size() && a[i] <= a[st.top()]) 20 | st.pop(); 21 | if (st.empty()) 22 | l[i] = 0; 23 | else 24 | l[i] = st.top() + 1; 25 | st.push(i); 26 | } 27 | while (st.size()) 28 | st.pop(); 29 | for (int i = n - 1; i >= 0; i--) 30 | { 31 | while (st.size() && a[st.top()] >= a[i]) 32 | st.pop(); 33 | if (st.empty()) 34 | r[i] = n - 1; 35 | else 36 | r[i] = st.top() - 1; 37 | st.push(i); 38 | } 39 | for (int i = 0; i < n; i++) 40 | if (r[i] - l[i] + 1 >= a[i]) 41 | ans = max(ans, a[i]); 42 | cout << ans << endl; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /DSA07028 - NHỊP CHỨNG KHOÁN: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n + 1]; 15 | stack st; 16 | st.push(0); 17 | for (int i = 1; i <= n; i++) 18 | { 19 | cin >> a[i]; 20 | while (st.size() > 1 && a[st.top()] <= a[i]) 21 | st.pop(); 22 | cout << i - st.top() << " "; 23 | st.push(i); 24 | } 25 | cout << endl; 26 | } 27 | } 28 | /* Do Xuan Huong 29 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 31 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 33 | @@@@@@@@@@##########################################@@@@@@@@@ 34 | @@@@@@@@##############################################@@@@@@@ 35 | @@@@@@#################################################@@@@@@ 36 | @@@@@####################################################@@@@ 37 | @@@%#####################@@@@@@@@@@@######################@@@ 38 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 39 | @@##################@@@@@@ @@@@@@##################@@ 40 | @@#################@@@@@ @@@@###################@ 41 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 42 | @ &@@@@ @@@@ .......@@ 43 | @@ @@@@@@ @@@@@@ .......@@ 44 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 45 | @@@ @@@@@@@@@@@ ......@@@@ 46 | @@@@ ......@@@@@ 47 | @@@@@@ ......@@@@@@ 48 | @@@@@@@ .....@@@@@@@@ 49 | @@@@@@@@@ .....@@@@@@@@@@ 50 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 52 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 54 | */ 55 | -------------------------------------------------------------------------------- /DSA07041 - BIỂU THỨC ĐÚNG DÀI NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | string s; 13 | cin >> s; 14 | int ans = 0; 15 | stack st; 16 | for (int i = 0; i < s.size(); i++) 17 | { 18 | if (s[i] == '(') 19 | st.push(s[i]); 20 | else 21 | { 22 | if (!st.empty()) 23 | { 24 | ans += 2; 25 | st.pop(); 26 | } 27 | } 28 | } 29 | cout << ans << endl; 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA08006 - SỐ 0 VÀ SỐ 9: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | queue q; 15 | q.push(9); 16 | while (q.size()) 17 | { 18 | long long k = q.front(); 19 | q.pop(); 20 | if (k % n == 0) 21 | { 22 | cout << k << endl; 23 | break; 24 | } 25 | q.push(k * 10); 26 | q.push(k * 10 + 9); 27 | } 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA08007 - SỐ BDN 1: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | string n, k; 5 | bool check(string s) 6 | { 7 | return s.size() < n.size() || (s.size() == n.size() && s <= n); 8 | } 9 | int main() 10 | { 11 | ios_base::sync_with_stdio(0); 12 | cin.tie(0); 13 | int t; 14 | cin >> t; 15 | while (t--) 16 | { 17 | int d = 0; 18 | cin >> n; 19 | stack st; 20 | st.push("1"); 21 | while (st.size()) 22 | { 23 | k = st.top(); 24 | d++; 25 | st.pop(); 26 | if (check(k + "0")) 27 | st.push(k + "0"); 28 | if (check(k + "1")) 29 | st.push(k + "1"); 30 | } 31 | cout << d << endl; 32 | } 33 | } 34 | /* Do Xuan Huong 35 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 37 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 38 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 39 | @@@@@@@@@@##########################################@@@@@@@@@ 40 | @@@@@@@@##############################################@@@@@@@ 41 | @@@@@@#################################################@@@@@@ 42 | @@@@@####################################################@@@@ 43 | @@@%#####################@@@@@@@@@@@######################@@@ 44 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 45 | @@##################@@@@@@ @@@@@@##################@@ 46 | @@#################@@@@@ @@@@###################@ 47 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 48 | @ &@@@@ @@@@ .......@@ 49 | @@ @@@@@@ @@@@@@ .......@@ 50 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 51 | @@@ @@@@@@@@@@@ ......@@@@ 52 | @@@@ ......@@@@@ 53 | @@@@@@ ......@@@@@@ 54 | @@@@@@@ .....@@@@@@@@ 55 | @@@@@@@@@ .....@@@@@@@@@@ 56 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 58 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 59 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 60 | */ 61 | -------------------------------------------------------------------------------- /DSA08008 - SỐ BDN 2: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | long long n, k; 13 | cin >> n; 14 | queue q; 15 | q.push(1); 16 | while (q.size()) 17 | { 18 | k = q.front(); 19 | if (k % n == 0) 20 | { 21 | cout << k << endl; 22 | break; 23 | } 24 | q.pop(); 25 | q.push(k * 10); 26 | q.push(k * 10 + 1); 27 | } 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /DSA08029 - QUAY HÌNH VUÔNG: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | #define fi first 4 | #define se second 5 | using namespace std; 6 | int l[6] = {3, 0, 2, 4, 1, 5}; 7 | int r[6] = {0, 4, 1, 3, 5, 2}; 8 | string rleft(string a) 9 | { 10 | string b = ""; 11 | for (int i = 0; i < 6; i++) 12 | b += a[l[i]]; 13 | return b; 14 | } 15 | string rright(string a) 16 | { 17 | string b = ""; 18 | for (int i = 0; i < 6; i++) 19 | b += a[r[i]]; 20 | return b; 21 | } 22 | int main() 23 | { 24 | ios_base::sync_with_stdio(0); 25 | cin.tie(0); 26 | int t; 27 | cin >> t; 28 | while (t--) 29 | { 30 | string a, b; 31 | int x; 32 | for (int i = 0; i < 6; i++) 33 | { 34 | cin >> x; 35 | a += to_string(x); 36 | } 37 | for (int i = 0; i < 6; i++) 38 | { 39 | cin >> x; 40 | b += to_string(x); 41 | } 42 | pair d, k, e; 43 | d.fi = a; 44 | d.se = 0; 45 | queue> c; 46 | c.push(d); 47 | while (c.size()) 48 | { 49 | k = c.front(); 50 | c.pop(); 51 | if (k.fi == b) 52 | { 53 | cout << k.se << endl; 54 | break; 55 | } 56 | e.se = k.se + 1; 57 | e.fi = rleft(k.fi); 58 | c.push(e); 59 | e.fi = rright(k.fi); 60 | c.push(e); 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /DSA09001 - CHUYỂN DANH SÁCH CẠNH SANG DANH SÁCH KỀ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m, u, v; 13 | cin >> n >> m; 14 | vector> a(n + 1); 15 | while (m--) 16 | { 17 | cin >> u >> v; 18 | a[u].push_back(v); 19 | a[v].push_back(u); 20 | } 21 | for (int i = 1; i <= n; i++) 22 | { 23 | cout << i << ": "; 24 | for (int j = 0; j < a[i].size(); j++) 25 | { 26 | cout << a[i][j] << " "; 27 | } 28 | cout << endl; 29 | } 30 | } 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /DSA09003 - BIỂU DIỄN ĐỒ THỊ CÓ HƯỚNG.: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n, m, u, v; 13 | cin >> n >> m; 14 | vector> a(n + 1); 15 | while (m--) 16 | { 17 | cin >> u >> v; 18 | a[u].push_back(v); 19 | } 20 | for (int i = 1; i <= n; i++) 21 | { 22 | cout << i << ": "; 23 | for (int j = 0; j < a[i].size(); j++) 24 | { 25 | cout << a[i][j] << " "; 26 | } 27 | cout << endl; 28 | } 29 | } 30 | } 31 | /* Do Xuan Huong 32 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 36 | @@@@@@@@@@##########################################@@@@@@@@@ 37 | @@@@@@@@##############################################@@@@@@@ 38 | @@@@@@#################################################@@@@@@ 39 | @@@@@####################################################@@@@ 40 | @@@%#####################@@@@@@@@@@@######################@@@ 41 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 42 | @@##################@@@@@@ @@@@@@##################@@ 43 | @@#################@@@@@ @@@@###################@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 45 | @ &@@@@ @@@@ .......@@ 46 | @@ @@@@@@ @@@@@@ .......@@ 47 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 48 | @@@ @@@@@@@@@@@ ......@@@@ 49 | @@@@ ......@@@@@ 50 | @@@@@@ ......@@@@@@ 51 | @@@@@@@ .....@@@@@@@@ 52 | @@@@@@@@@ .....@@@@@@@@@@ 53 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 57 | */ 58 | -------------------------------------------------------------------------------- /DSA09034 - ĐẾM SỐ AO: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n, m, dx, dy, s = 0; 5 | char a[105][105]; 6 | int rx[] = {1, 1, 1, -1, -1, -1, 0, 0}; 7 | int ry[] = {1, 0, -1, 1, -1, 0, 1, -1}; 8 | void dfs(int x, int y) 9 | { 10 | for (int i = 0; i < 8; i++) 11 | { 12 | dx = x + rx[i]; 13 | dy = y + ry[i]; 14 | if (dx >= 1 && dx <= n && dy >= 1 && dy <= m && a[dx][dy] == 'W') 15 | { 16 | a[dx][dy] = '.'; 17 | dfs(dx, dy); 18 | } 19 | } 20 | } 21 | int main() 22 | { 23 | ios_base::sync_with_stdio(0); 24 | cin.tie(0); 25 | cin >> n >> m; 26 | cin.ignore(0); 27 | for (int i = 1; i <= n; i++) 28 | { 29 | for (int j = 1; j <= m; j++) 30 | cin >> a[i][j]; 31 | } 32 | for (int i = 1; i <= n; i++) 33 | { 34 | for (int j = 1; j <= m; j++) 35 | { 36 | if (a[i][j] == 'W') 37 | { 38 | a[i][j] = '.'; 39 | dfs(i, j); 40 | s++; 41 | } 42 | } 43 | } 44 | cout << s; 45 | } 46 | -------------------------------------------------------------------------------- /DSA11005 - DUYỆT CÂY 2: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl '\n' 3 | using namespace std; 4 | struct Node 5 | { 6 | int val; 7 | Node *left, *right; 8 | }; 9 | Node *createNode(int x) 10 | { 11 | Node *k = new Node; 12 | k->val = x; 13 | k->left = k->right = NULL; 14 | return k; 15 | } 16 | Node *buildTree(int n, int *inorder, int *levelorder, int st, int e) 17 | { 18 | if (n > 0) 19 | { 20 | Node *root = createNode(levelorder[0]); 21 | int idx = -1; 22 | unordered_map m; 23 | for (int i = st; i <= e; ++i) 24 | { 25 | if (inorder[i] == levelorder[0]) 26 | { 27 | idx = i; 28 | break; 29 | } 30 | m[inorder[i]]++; 31 | } 32 | int L[m.size()], R[e - st - m.size()], l, r; 33 | l = r = 0; 34 | for (int i = 1; i < n; ++i) 35 | { 36 | if (m[levelorder[i]]) 37 | L[l++] = levelorder[i]; 38 | else 39 | R[r++] = levelorder[i]; 40 | } 41 | root->left = buildTree(idx - st, inorder, L, st, idx - 1); 42 | root->right = buildTree(e - idx, inorder, R, idx + 1, e); 43 | return root; 44 | } 45 | return NULL; 46 | } 47 | void postOrder(Node *root) 48 | { 49 | if (root->left != NULL) 50 | postOrder(root->left); 51 | if (root->right != NULL) 52 | postOrder(root->right); 53 | cout << root->val << ' '; 54 | } 55 | int main() 56 | { 57 | ios_base::sync_with_stdio(0); 58 | cin.tie(0); 59 | int t; 60 | cin >> t; 61 | while (t--) 62 | { 63 | int n; 64 | cin >> n; 65 | int inorder[n], levelorder[n]; 66 | for (int i = 0; i < n; i++) 67 | cin >> inorder[i]; 68 | for (int i = 0; i < n; i++) 69 | cin >> levelorder[i]; 70 | Node *root = buildTree(n, inorder, levelorder, 0, n - 1); 71 | postOrder(root); 72 | cout << endl; 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /DSAKT110 - NHÀ KHÔNG KỀ NHAU: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int t; 9 | cin >> t; 10 | while (t--) 11 | { 12 | int n; 13 | cin >> n; 14 | int a[n + 3], f[n + 3] = {}; 15 | for (int i = 3; i <= n + 2; i++) 16 | { 17 | cin >> a[i]; 18 | f[i] = max(f[i - 2], f[i - 3]) + a[i]; 19 | } 20 | cout << max(f[n + 2], f[n + 1]) << endl; 21 | } 22 | } 23 | /* Do Xuan Huong 24 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 28 | @@@@@@@@@@##########################################@@@@@@@@@ 29 | @@@@@@@@##############################################@@@@@@@ 30 | @@@@@@#################################################@@@@@@ 31 | @@@@@####################################################@@@@ 32 | @@@%#####################@@@@@@@@@@@######################@@@ 33 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 34 | @@##################@@@@@@ @@@@@@##################@@ 35 | @@#################@@@@@ @@@@###################@ 36 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 37 | @ &@@@@ @@@@ .......@@ 38 | @@ @@@@@@ @@@@@@ .......@@ 39 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 40 | @@@ @@@@@@@@@@@ ......@@@@ 41 | @@@@ ......@@@@@ 42 | @@@@@@ ......@@@@@@ 43 | @@@@@@@ .....@@@@@@@@ 44 | @@@@@@@@@ .....@@@@@@@@@@ 45 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 49 | */ 50 | -------------------------------------------------------------------------------- /DÃY CON LIÊN TIẾP: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n; 9 | cin >> n; 10 | int a[n], m = 0, s = 0, ans = 1; 11 | for (int i = 0; i < n; i++) 12 | { 13 | cin >> a[i]; 14 | m = max(m, a[i]); 15 | } 16 | for (int i = 0; i < n; i++) 17 | { 18 | if (a[i] == m) 19 | s++; 20 | else 21 | s = 0; 22 | ans = max(ans, s); 23 | } 24 | cout << ans; 25 | } 26 | /* Do Xuan Huong 27 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 30 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 31 | @@@@@@@@@@##########################################@@@@@@@@@ 32 | @@@@@@@@##############################################@@@@@@@ 33 | @@@@@@#################################################@@@@@@ 34 | @@@@@####################################################@@@@ 35 | @@@%#####################@@@@@@@@@@@######################@@@ 36 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 37 | @@##################@@@@@@ @@@@@@##################@@ 38 | @@#################@@@@@ @@@@###################@ 39 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 40 | @ &@@@@ @@@@ .......@@ 41 | @@ @@@@@@ @@@@@@ .......@@ 42 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 43 | @@@ @@@@@@@@@@@ ......@@@@ 44 | @@@@ ......@@@@@ 45 | @@@@@@ ......@@@@@@ 46 | @@@@@@@ .....@@@@@@@@ 47 | @@@@@@@@@ .....@@@@@@@@@@ 48 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 51 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 52 | */ 53 | -------------------------------------------------------------------------------- /DÃY SỐ ĐẸP: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | int n; 10 | cin >> n; 11 | int a[n], b, c, k, ans = 0; 12 | for (int i = 0; i < n; i++) 13 | cin >> a[i]; 14 | for (int i = 1; i < n; i++) 15 | { 16 | b = min(a[i], a[i - 1]); 17 | c = max(a[i], a[i - 1]); 18 | k = log2(c / b); 19 | if (pow(2, k) * b == c && k > 0) 20 | k--; 21 | ans += k; 22 | } 23 | cout << ans << endl; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /NGƯỜI DU LỊCH: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int n, a[20], b[20], c[20][20], ans = 1e9, s = 0; 4 | vector as; 5 | void Try(int x, vector k) 6 | { 7 | for (int i = 2; i <= n; i++) 8 | { 9 | if (!b[i]) 10 | { 11 | a[x] = i; 12 | b[i]++; 13 | s += c[a[x - 1]][i]; 14 | k.push_back(i); 15 | if (x == n && s + c[i][1] < ans) 16 | { 17 | ans = s + c[i][1]; 18 | as = k; 19 | } 20 | else if (s < ans && x < n) 21 | Try(x + 1, k); 22 | s -= c[a[x - 1]][i]; 23 | b[i]--; 24 | k.pop_back(); 25 | } 26 | } 27 | } 28 | int main() 29 | { 30 | cin >> n; 31 | for (int i = 1; i <= n; i++) 32 | { 33 | for (int j = 1; j <= n; j++) 34 | { 35 | cin >> c[i][j]; 36 | } 37 | } 38 | a[1] = b[1] = 1; 39 | as.push_back(1); 40 | if (n == 1) 41 | { 42 | cout << 0; 43 | return 0; 44 | } 45 | Try(2, as); 46 | cout << "("; 47 | for (auto i : as) 48 | cout << i << ","; 49 | cout << 1 << ")" << endl; 50 | cout << ans; 51 | } 52 | -------------------------------------------------------------------------------- /PHÁT LỘC: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (n == k) 9 | { 10 | if (s[n - 1] == '6') 11 | cout << s << endl; 12 | return; 13 | } 14 | if (s[k - 1] == '8') 15 | Try(s + "6"); 16 | else 17 | { 18 | if (k < 4) 19 | Try(s + "6"); 20 | else if (s[k - 2] == '8' || s[k - 3] == '8') 21 | Try(s + "6"); 22 | Try(s + "8"); 23 | } 24 | } 25 | int main() 26 | { 27 | ios_base::sync_with_stdio(0); 28 | cin.tie(0); 29 | cin >> n; 30 | Try("8"); 31 | } 32 | /* Do Xuan Huong 33 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 35 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 36 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 37 | @@@@@@@@@@##########################################@@@@@@@@@ 38 | @@@@@@@@##############################################@@@@@@@ 39 | @@@@@@#################################################@@@@@@ 40 | @@@@@####################################################@@@@ 41 | @@@%#####################@@@@@@@@@@@######################@@@ 42 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 43 | @@##################@@@@@@ @@@@@@##################@@ 44 | @@#################@@@@@ @@@@###################@ 45 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 46 | @ &@@@@ @@@@ .......@@ 47 | @@ @@@@@@ @@@@@@ .......@@ 48 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 49 | @@@ @@@@@@@@@@@ ......@@@@ 50 | @@@@ ......@@@@@ 51 | @@@@@@ ......@@@@@@ 52 | @@@@@@@ .....@@@@@@@@ 53 | @@@@@@@@@ .....@@@@@@@@@@ 54 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 56 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 57 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 58 | */ 59 | -------------------------------------------------------------------------------- /SẮP XẾP CHẴN LẺ: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int n, x, posl = 0, posc = 0; 6 | cin >> n; 7 | vector pl, l, c; 8 | for (int i = 0; i < n; i++) 9 | { 10 | cin >> x; 11 | if (x % 2 == 1) 12 | { 13 | l.push_back(x); 14 | pl.push_back(i); 15 | } 16 | else 17 | c.push_back(x); 18 | } 19 | sort(c.begin(), c.end()); 20 | sort(l.begin(), l.end(), greater()); 21 | for (int i = 0; i < n; i++) 22 | { 23 | if (posl < pl.size() && i == pl[posl]) 24 | cout << l[posl++] << " "; 25 | else 26 | cout << c[posc++] << " "; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /SỐ CẶP BẠN TỐT: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n, k, ans = 0; 9 | cin >> n >> k; 10 | vector s(n + 1); 11 | vector> f(n + 1, vector(30, 0)); 12 | for (int i = 1; i <= n; i++) 13 | { 14 | cin >> s[i]; 15 | f[i] = f[i - 1]; 16 | f[i][s[i].size()]++; 17 | } 18 | for (int i = 1; i <= n; i++) 19 | ans += f[i - 1][s[i].size()] - f[max(i - k - 1, 0)][s[i].size()]; 20 | cout << ans; 21 | } 22 | /* Do Xuan Huong 23 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 24 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 25 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 27 | @@@@@@@@@@##########################################@@@@@@@@@ 28 | @@@@@@@@##############################################@@@@@@@ 29 | @@@@@@#################################################@@@@@@ 30 | @@@@@####################################################@@@@ 31 | @@@%#####################@@@@@@@@@@@######################@@@ 32 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 33 | @@##################@@@@@@ @@@@@@##################@@ 34 | @@#################@@@@@ @@@@###################@ 35 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 36 | @ &@@@@ @@@@ .......@@ 37 | @@ @@@@@@ @@@@@@ .......@@ 38 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 39 | @@@ @@@@@@@@@@@ ......@@@@ 40 | @@@@ ......@@@@@ 41 | @@@@@@ ......@@@@@@ 42 | @@@@@@@ .....@@@@@@@@ 43 | @@@@@@@@@ .....@@@@@@@@@@ 44 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 45 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 46 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 48 | */ 49 | -------------------------------------------------------------------------------- /SỐ XA CÁCH: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n, check[15]; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (k == n) 9 | cout << s << endl; 10 | for (int i = 1; i <= n; i++) 11 | if (k == 0 || (!check[i] && abs(s[k - 1] - '0' - i) != 1)) 12 | { 13 | check[i] = 1; 14 | Try(s + to_string(i)); 15 | check[i] = 0; 16 | } 17 | } 18 | int main() 19 | { 20 | ios_base::sync_with_stdio(0); 21 | cin.tie(0); 22 | int t; 23 | cin >> t; 24 | while (t--) 25 | { 26 | cin >> n; 27 | Try(""); 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /THÁP HÀ NỘI: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | void Tower(int n, char a, char b, char c) 5 | { 6 | if (n == 1) 7 | { 8 | cout << a << " -> " << c << endl; 9 | return; 10 | } 11 | Tower(n - 1, a, c, b); 12 | Tower(1, a, b, c); 13 | Tower(n - 1, b, a, c); 14 | } 15 | int main() 16 | { 17 | ios_base::sync_with_stdio(0); 18 | cin.tie(0); 19 | char a = 'A', b = 'B', c = 'C'; 20 | int n; 21 | cin >> n; 22 | Tower(n, a, b, c); 23 | } 24 | /* Do Xuan Huong 25 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 26 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 29 | @@@@@@@@@@##########################################@@@@@@@@@ 30 | @@@@@@@@##############################################@@@@@@@ 31 | @@@@@@#################################################@@@@@@ 32 | @@@@@####################################################@@@@ 33 | @@@%#####################@@@@@@@@@@@######################@@@ 34 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 35 | @@##################@@@@@@ @@@@@@##################@@ 36 | @@#################@@@@@ @@@@###################@ 37 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 38 | @ &@@@@ @@@@ .......@@ 39 | @@ @@@@@@ @@@@@@ .......@@ 40 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 41 | @@@ @@@@@@@@@@@ ......@@@@ 42 | @@@@ ......@@@@@ 43 | @@@@@@ ......@@@@@@ 44 | @@@@@@@ .....@@@@@@@@ 45 | @@@@@@@@@ .....@@@@@@@@@@ 46 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 47 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 50 | */ 51 | -------------------------------------------------------------------------------- /TRÒ CHƠI VỚI CÁC CON SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int n, check[15]; 5 | void Try(string s) 6 | { 7 | int k = s.size(); 8 | if (k == n) 9 | cout << s << endl; 10 | for (int i = 1; i <= n; i++) 11 | if (k == 0 || (!check[i] && abs(s[k - 1] - '0' - i) != 1)) 12 | { 13 | check[i] = 1; 14 | Try(s + to_string(i)); 15 | check[i] = 0; 16 | } 17 | } 18 | int main() 19 | { 20 | ios_base::sync_with_stdio(0); 21 | cin.tie(0); 22 | int t; 23 | cin >> t; 24 | while (t--) 25 | { 26 | cin >> n; 27 | Try(""); 28 | } 29 | } 30 | /* Do Xuan Huong 31 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 32 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 33 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 34 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 35 | @@@@@@@@@@##########################################@@@@@@@@@ 36 | @@@@@@@@##############################################@@@@@@@ 37 | @@@@@@#################################################@@@@@@ 38 | @@@@@####################################################@@@@ 39 | @@@%#####################@@@@@@@@@@@######################@@@ 40 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 41 | @@##################@@@@@@ @@@@@@##################@@ 42 | @@#################@@@@@ @@@@###################@ 43 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 44 | @ &@@@@ @@@@ .......@@ 45 | @@ @@@@@@ @@@@@@ .......@@ 46 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 47 | @@@ @@@@@@@@@@@ ......@@@@ 48 | @@@@ ......@@@@@ 49 | @@@@@@ ......@@@@@@ 50 | @@@@@@@ .....@@@@@@@@ 51 | @@@@@@@@@ .....@@@@@@@@@@ 52 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 53 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 54 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 55 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 56 | */ 57 | -------------------------------------------------------------------------------- /TÁCH NHÓM TỐI ƯU: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | int main() 5 | { 6 | ios_base::sync_with_stdio(0); 7 | cin.tie(0); 8 | int n, k, ans = 1; 9 | cin >> n >> k; 10 | int a[n]; 11 | for (int i = 0; i < n; i++) 12 | cin >> a[i]; 13 | sort(a, a + n); 14 | for (int i = 1; i < n; i++) 15 | if (a[i] > a[i - 1] + k) 16 | ans++; 17 | cout << ans; 18 | } 19 | /* Do Xuan Huong 20 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 21 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 22 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 23 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 24 | @@@@@@@@@@##########################################@@@@@@@@@ 25 | @@@@@@@@##############################################@@@@@@@ 26 | @@@@@@#################################################@@@@@@ 27 | @@@@@####################################################@@@@ 28 | @@@%#####################@@@@@@@@@@@######################@@@ 29 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 30 | @@##################@@@@@@ @@@@@@##################@@ 31 | @@#################@@@@@ @@@@###################@ 32 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 33 | @ &@@@@ @@@@ .......@@ 34 | @@ @@@@@@ @@@@@@ .......@@ 35 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 36 | @@@ @@@@@@@@@@@ ......@@@@ 37 | @@@@ ......@@@@@ 38 | @@@@@@ ......@@@@@@ 39 | @@@@@@@ .....@@@@@@@@ 40 | @@@@@@@@@ .....@@@@@@@@@@ 41 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 42 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 43 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 44 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 45 | */ 46 | -------------------------------------------------------------------------------- /TÍCH CHỮ SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | long long n; 10 | cin >> n; 11 | if (n == 1) 12 | { 13 | cout << 1 << endl; 14 | continue; 15 | } 16 | stack st; 17 | for (int i = 9; i >= 2; i--) 18 | { 19 | while (n % i == 0) 20 | { 21 | st.push(i); 22 | n /= i; 23 | } 24 | } 25 | if (n > 1) 26 | cout << -1 << endl; 27 | else 28 | { 29 | while (st.size()) 30 | { 31 | cout << st.top(); 32 | st.pop(); 33 | } 34 | cout << endl; 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /TỔNG ƯỚC SỐ: -------------------------------------------------------------------------------- 1 | #include 2 | #define endl "\n" 3 | using namespace std; 4 | vector a(1000001, 1); 5 | void era() 6 | { 7 | for (int i = 2; i <= 1000000; i++) 8 | { 9 | for (int j = i * 2; j <= 1000000; j += i) 10 | a[j] += i; 11 | } 12 | } 13 | int main() 14 | { 15 | ios_base::sync_with_stdio(0); 16 | cin.tie(0); 17 | era(); 18 | int l, r, s = 0; 19 | cin >> l >> r; 20 | for (int i = l; i <= r; i++) 21 | if (a[i] > i) 22 | s++; 23 | cout << s; 24 | } 25 | /* Do Xuan Huong 26 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 27 | @@@@@@@@@@@@@@@@@@@@@@##################@@@@@@@@@@@@@@@@@@@@@ 28 | @@@@@@@@@@@@@@@@#############################@@@@@@@@@@@@@@@@ 29 | @@@@@@@@@@@@&####################################@@@@@@@@@@@@ 30 | @@@@@@@@@@##########################################@@@@@@@@@ 31 | @@@@@@@@##############################################@@@@@@@ 32 | @@@@@@#################################################@@@@@@ 33 | @@@@@####################################################@@@@ 34 | @@@%#####################@@@@@@@@@@@######################@@@ 35 | @@@###################@@@@@@@@@@@@@@@@@####################@@ 36 | @@##################@@@@@@ @@@@@@##################@@ 37 | @@#################@@@@@ @@@@###################@ 38 | @@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ 39 | @ &@@@@ @@@@ .......@@ 40 | @@ @@@@@@ @@@@@@ .......@@ 41 | @@ @@@@@@@@@@@@@@@@@ .......@@@ 42 | @@@ @@@@@@@@@@@ ......@@@@ 43 | @@@@ ......@@@@@ 44 | @@@@@@ ......@@@@@@ 45 | @@@@@@@ .....@@@@@@@@ 46 | @@@@@@@@@ .....@@@@@@@@@@ 47 | @@@@@@@@@@@@ ....@@@@@@@@@@@@@ 48 | @@@@@@@@@@@@@@@@ ....@@@@@@@@@@@@@@@@ 49 | @@@@@@@@@@@@@@@@@@@@@% .@@@@@@@@@@@@@@@@@@@@@@ 50 | @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 51 | */ 52 | -------------------------------------------------------------------------------- /XÂU CON NHỎ NHẤT: -------------------------------------------------------------------------------- 1 | #include 2 | using namespace std; 3 | int main() 4 | { 5 | int t; 6 | cin >> t; 7 | while (t--) 8 | { 9 | string s; 10 | cin >> s; 11 | int n = s.size(), k = 0, st = 0, ans = 1e9, x = 0, a[256] = {}; 12 | if (n == 1) 13 | { 14 | cout << 1 << endl; 15 | continue; 16 | } 17 | map m; 18 | for (int i = 0; i < n; i++) 19 | { 20 | if (!m[s[i]]) 21 | { 22 | m[s[i]]++; 23 | k++; 24 | } 25 | } 26 | for (int i = 0; i < n; i++) 27 | { 28 | a[s[i]]++; 29 | if (a[s[i]] == 1) 30 | x++; 31 | if (x == k) 32 | { 33 | while (a[s[st]] > 1) 34 | { 35 | if (a[s[st]] > 1) 36 | a[s[st]]--; 37 | st++; 38 | } 39 | int l = i - st + 1; 40 | ans = min(ans, l); 41 | } 42 | } 43 | cout << ans << endl; 44 | } 45 | } 46 | --------------------------------------------------------------------------------