ในคณิตศาสตร์เครื่องหมายอัศเจรีย์!มักหมายถึงแฟกทอเรียลและเกิดขึ้นหลังจากการโต้แย้ง
ในการเขียนโปรแกรมเครื่องหมายอัศเจรีย์!มักหมายถึงการปฏิเสธและเกิดขึ้นก่อนการโต้แย้ง
สำหรับความท้าทายนี้เราจะใช้การดำเนินการเหล่านี้กับศูนย์หนึ่งเท่านั้น
Factorial
0! = 1
1! = 1
Negation
!0 = 1
!1 = 0
ใช้สตริงของศูนย์หรือมากกว่า!ตามด้วย0หรือ1ตามด้วยศูนย์หรือมากกว่า!( /!*[01]!*/)
ยกตัวอย่างเช่นการป้อนข้อมูลที่อาจจะ!!!0!!!!หรือ!!!1หรือ!0!!หรือหรือ0!1
สิ่งที่!อยู่ก่อนหน้า0หรือ1ถูกปฏิเสธและสิ่ง!ที่ตามมาคือแฟคทอเรียล
แฟคทอเรียลมีความสำคัญสูงกว่าการปฏิเสธดังนั้นแฟคทอเรียลจะถูกใช้ก่อนเสมอ
ยกตัวอย่างเช่น!!!0!!!!อย่างแท้จริงหมายถึงหรือยังดีกว่า!!!(0!!!!)!(!(!((((0!)!)!)!)))
เอาต์พุตแอพพลิเคชั่นผลลัพธ์ของแฟคทอเรียลและการปฏิเสธทั้งหมด การส่งออกจะเป็นหรือ01
กรณีทดสอบ
0 -> 0
1 -> 1
0! -> 1
1! -> 1
!0 -> 1
!1 -> 0
!0! -> 0
!1! -> 0
0!! -> 1
1!! -> 1
!!0 -> 0
!!1 -> 1
!0!! -> 0
!!!1 -> 0
!!!0!!!! -> 0
!!!1!!!! -> 0
รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
