시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
승연이는 정수 길이의 막대기 여러 개를 가지고 있었고, 각 막대기를 정수 길이의 여러 토막으로 잘랐습니다. 어떤 막대기는 자르지 않았을 수도 있습니다.
이제 모든 토막을 다시 이어 붙여 원래처럼 길이가 모두 같은 막대기 여러 개를 만들려고 합니다. 하지만 원래 막대기의 개수와 길이를 잊어버렸습니다. 따라서 모든 토막을 한 번씩 사용해서 만들 수 있는, 길이가 모두 같은 막대기 중 가장 짧은 길이를 찾아야 합니다.
예를 들어 토막 길이가 {5, 2, 1, 1, 2, 5, 2, 5, 1}이면 길이 12인 막대기 2개로도 만들 수 있지만, 가능한 가장 짧은 공통 길이는 6입니다.

입력은 두 줄입니다. 첫째 줄에는 토막의 개수 n이 주어집니다. n은 50 이하입니다.
둘째 줄에는 각 토막의 길이 l이 공백으로 구분되어 주어집니다. 모든 길이는 1 <= l <= 1,000인 정수입니다.
첫째 줄에 복원된 막대기 한 개의 길이를 출력합니다.
이어지는 줄에는 각 복원 막대기를 구성하는 토막 길이를 한 줄에 하나씩 출력합니다. 각 줄의 토막 순서와 막대기 줄의 순서는 아무 순서나 가능합니다.