Hôm nay trong lớp thống kê của tôi, tôi thấy rằng một số giai thừa có thể được đơn giản hóa khi nhân với nhau! Ví dụ:5! * 3! = 5! *3*2 = 5! *6 = 6!
Công việc của bạn:
Đưa ra một chuỗi chỉ chứa các số Ả Rập và các dấu chấm than, đơn giản hóa giai thừa của tôi thành chuỗi ngắn nhất có thể, với số lượng byte ít nhất cho ngôn ngữ của bạn, mã kiểu golf.
Đầu vào
Một chuỗi chỉ chứa số Ả Rập và dấu chấm than. Các yếu tố cho đầu vào sẽ không lớn hơn 200!. Các yếu tố sẽ không có nhiều hơn một giai thừa cho mỗi số. Đầu vào có thể được lấy dưới dạng danh sách các số nguyên.
Đầu ra
Một chuỗi có thể rút ngắn, có giá trị tương đương trên đầu vào. Thứ tự là không quan trọng. Ký hiệu giai thừa là bắt buộc, nhưng bạn không bắt buộc phải sử dụng nhiều hơn một ký hiệu giai thừa cho mỗi số.
Các trường hợp thử nghiệm
In: 3!2!2!
Out: 4!
In 2!3!2!0!
Out: 4!
In: 7!2!2!7!2!2!2!2!
Out: 8!8!
In: 23!3!2!2!
Out: 24!
Also: 4!!
In: 23!3!2!2!2!
Out: 24!2!
In: 127!2!2!2!2!2!2!2!
Out: 128!
In: 32!56!29!128!
Out: 29!32!56!128!
May mắn nhất
1!1!
chỉ là một chuỗi rỗng?