Cho \(n\) đồng xu với mệnh giá lần lượt là \(x_1\), \(x_2\),..., \(x_n\). Bạn hãy liệt kê tất cả các giá trị tiền phân biệt mà ta có thể thanh toán bằng cách sử dụng một số đồng xu trong số \(n\) đồng đã cho.
Input
- Dòng đầu chứa số nguyên dương \(n\) \(\left(n\leq 100\right)\).
- Dòng tiếp theo chứa \(n\) số nguyên dương \(x_1, x_2,...,x_n\) \((x_i \leq 1000)\).
Output
- Dòng đầu in ra số nguyên \(k\) là số lượng giá trị phân biệt cần tìm.
- Dòng tiếp theo in ra \(k\) giá trị đó theo thứ tự tăng dần.
Ví dụ
Sample input 01
4
4 2 5 2
Sample output 01
9
2 4 5 6 7 8 9 11 13