Điểm:
100 (p)
Thời gian:
2.0s
Bộ nhớ:
1G
Input:
bàn phím
Output:
màn hình
Cho \(N\) người \((2 \le N \le 32)\), mỗi người có một số \(a_i (1 \le a_i \le 10^9\)) được gọi là độ tin cậy.
Cần phân chia \(n\) người này vào 2 nhóm sao cho:
- Mỗi người thuộc đúng một nhóm
- Chênh lệch tổng độ tin cậy của 2 nhóm là bé nhất
Input
-
Dòng đầu chứa số nguyên \(N\).
-
Dòng tiếp theo chứa \(N\) số : số thứ \(i\) là độ tin cậy của người thứ \(i\).
Output
- Ghi ra hai số \(u\) và \(v\) với \(u\) là độ chênh lệch nhỏ nhất và \(v\) là số cách phân chia.
Scoring
- Subtask \(1\) (\(80\%\) số điểm): \(N \le 24\).
- Subtask \(2\) (\(20\%\) số điểm): không có điều kiện gì thêm
Example
Test 1
Input
5
1 5 6 7 8
Output
1 3
Note
Chú thích: Độ chênh lệch ít nhất của 2 nhóm là \(1\).
Có 3 cách phân chia. 3 cách phân chia nhóm 1 là \((3,5) ,(1,3,4) và (1,2,5)\).
Bình luận