Idea: Greedy Cho một mảng các số nguyên không âm. Tìm ba phần tử trong mảng đó tạo thành một tam giác có chu vi lớn nhất.
Input : {6, 1, 6, 5, 8, 4}
Output : 20
Input : {2, 20, 7, 55, 1, 33, 12, 4}
Output : Triangle formation is not possible.
Input: {33, 6, 20, 1, 8, 12, 5, 55, 4, 9}
Output: 41
Idea: Dynamic Programming Cho hai chuỗi ký tự ‘X’ và ‘Y’, hãy tìm độ dài của xâu con chung dài nhất. Xâu con chung là một dãy ký tự xuất hiện trong cả hai chuỗi theo thứ tự giống nhau.
Input : X = “HarryDepTrai”, y = “HarryPro”
Output : 5
Explanation:
The longest common substring is “Harry” and is of length 5.
Input : X = “abcdxyz”, y = “xyzabcd”
Output : 4
Explanation:
The longest common substring is “abcd” and is of length 4.
Input : X = “zxabcdezy”, y = “yzabcdezx”
Output : 6
Explanation:
The longest common substring is “abcdez” and is of length 6.
Ý tưởng: Đệ quy Cho hai mảng được sắp xếp A và B. Tìm tất cả các mảng kết hợp có thể tạo thành sao cho phần tử đầu tiên được lấy từ A, tiếp theo là từ B, rồi lại từ A, cứ thế cho đến khi cả hai mảng đều rỗng. Các mảng kết hợp này phải được sắp xếp tăng dần và bắt buộc phải kết thúc bằng một phần tử từ B.
A = {10, 15, 25}
B = {1, 5, 20, 30}
The resulting arrays are:
10 20
10 20 25 30
10 30
15 20
15 20 25 30
15 30
25 30
Bài toán: Một xâu gọi là xâu đối xứng (palindrome) nếu xâu đó đọc từ trái sang phải hay từ phải sang trái đều như nhau. Cho một xâu , hãy tìm số kí tự ít nhất cần thêm vào để trở thành xâu đối xứng.
Ví dụ: S=edbabcd, xâu đảo của là P=dcbabde. Xâu con chung dài nhất của và là T=dbabd. Như vậy cần thêm 2 kí tự là e và c vào để trở thành xâu đối xứng.