Tính tổng các số chẵn và tổng các số lẻ trong đoạn
: Phép tính làm tròn lên.
: Phép tính làm tròn xuống
: Tổng các số từ a đến b
Duyệt tuần tự từ a đến b và cộng các số chẵn hoặc lẻ vào tổng tương ứng.
Độ phức tạp thời gian: .
Xét đoạn , đặt:
Ta có . Vậy chỉ cần tính và !
Tổng các số từ đến bằng tổng các số từ đến trừ đi tổng các số từ đến
Những số chẵn trong đoạn có thể viết lại thành với
sE được tính bằng cách lấy tổng các số từ đến nhân đôi lên
Sau khi đã tính được và , ta tính . Như vậy, bài toán đã được giải quyết!
VD: Trong đoạn có những số chẵn sau: .
Tương ứng với: .
Độ phức tạp thời gian: .
Cho dãy số nguyên dương .
Đếm số cách chọn cặp sao cho tổng các số còn lại là chẵn.
Tính trước tổng của dãy số và lưu vào biến .
Duyệt tuần tự để cố định , tương ứng với mỗi giá trị lại duyệt tuần tự một lần nữa để tìm . Kiểm tra nhanh cặp số hiện tại có thỏa mãn hay không bằng cách kiểm tra có chẵn hay không.
Độ phức tạp thời gian: .
Nhận thấy tính chẵn lẻ của phụ thuộc vào tính chẵn lẻ của do đã cố định, ta có thể chia ra các trường hợp như sau:
Bài toán quy về "Đếm số cặp số có tổng chẵn", chỉ có hai trường hợp như sau:
Bài toán quy về "Đếm số cặp số có tổng lẻ", chỉ có duy nhất trường hợp sau:
Như vậy để xử lý bài toán chỉ cần đếm số lượng số chẵn và số lẻ trong dãy.
Khi đó, đặt:
Ta có các công thức tính như sau:
Độ phức tạp thời gian: .
Cho dãy số nguyên dương . Chọn một số phần tử sao cho không có hai phần tử nào liền kề nhau trong dãy, sao cho tổng các phần tử được chọn là lớn nhất.
Quay lui thử tất cả các cách chọn.
Độ phức tạp thời gian: .
Quy hoạch động cơ bản.
Định nghĩa là tổng lớn nhất có thể đạt nếu xét lấy trong phần tử đầu tiên (có thể lấy hoặc không lấy).
Công thức quy hoạch động:
Kết quả: .
Độ phức tạp thời gian: .