Gửi bài giải

Điểm: 0,50 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho mảng n số nguyên a₁, a₂, ..., aₙ. Giá trị của một đoạn con liên tiếp được tính bằng số lượng cặp chỉ số phân biệt trong đoạn này chứa hai giá trị bằng nhau.
Hãy chia dãy đã cho thành m đoạn con khác rỗng gồm các phần tử liên tiếp, không giao nhau, mỗi phần tử nằm trong đúng một đoạn sao cho tổng giá trị của m đoạn con này là nhỏ nhất.


Input:
  • Dòng đầu tiên chứa hai số nguyên dương n, m (2 ≤ n ≤ 10⁵, 2 ≤ m ≤ min(n, 20))
  • Dòng thứ hai chứa n số nguyên a₁, a₂, ..., aₙ (1 ≤ aᵢ ≤ n)

Output:
  • Một số nguyên duy nhất là kết quả tìm được

Example:
Input Output
10 2 8
1 2 1 2 1 2 1 2 1 2

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.