วันนี้ในชั้นเรียนสถิติของฉันฉันพบว่าแฟคทอเรียลบางตัวสามารถทำให้ง่ายขึ้นเมื่อคูณเข้าด้วยกัน! ตัวอย่างเช่น:5! * 3! = 5! *3*2 = 5! *6 = 6!
งานของคุณ:
รับสตริงที่มีเฉพาะตัวเลขอารบิกและเครื่องหมายอัศเจรีย์ทำให้แฟคทอเรียลของฉันเป็นสตริงที่สั้นที่สุดเท่าที่เป็นไปได้ในจำนวนไบต์น้อยที่สุดสำหรับภาษาของคุณสไตล์การเขียนโค้ด
อินพุต
สตริงที่มีเฉพาะตัวเลขอารบิกและเครื่องหมายอัศเจรีย์ แฟกทอเรียลสำหรับอินพุตจะไม่ใหญ่กว่า 200! แฟคทอเรียลจะไม่มีแฟคทอเรียลมากกว่าหนึ่งรายการต่อหมายเลข อินพุตอาจถูกใช้เป็นรายการของจำนวนเต็ม
เอาท์พุต
สตริงที่สั้นลงซึ่งอาจมีค่าเทียบเท่ากับอินพุต คำสั่งซื้อนั้นไม่สำคัญ สัญลักษณ์แฟคทอเรียลเป็นสิ่งที่จำเป็น แต่คุณไม่จำเป็นต้องใช้สัญลักษณ์แฟคทอเรียลมากกว่าหนึ่งรายการต่อหมายเลข
กรณีทดสอบ
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!
ขอให้โชคดี
1!1!
เพียงสตริงที่ว่างเปล่า?