In der Mathematik bedeutet ein Ausrufezeichen !
oft Fakultät und kommt nach dem Argument.
Bei der Programmierung bedeutet ein Ausrufezeichen !
oft Negation und steht vor dem Argument.
Für diese Herausforderung wenden wir diese Operationen nur auf Null und Eins an.
Factorial
0! = 1
1! = 1
Negation
!0 = 1
!1 = 0
Nehmen Sie eine Folge von null oder mehr !
, gefolgt von 0
oder 1
, gefolgt von null oder mehr !
( /!*[01]!*/
).
Beispielsweise kann die Eingabe !!!0!!!!
oder !!!1
oder !0!!
oder 0!
oder sein1
.
Das !
's vor dem 0
oder 1
sind Negationen und das !
' s nach sind Fakultäten.
Fakultät hat höhere Priorität als Negation, daher werden Fakultäten immer zuerst angewendet.
Zum Beispiel !!!0!!!!
wirklich bedeutet !!!(0!!!!)
, oder noch besser !(!(!((((0!)!)!)!)))
.
Die resultierende Anwendung aller Fakultäten und Negationen ausgeben. Die Ausgabe wird immer 0
oder sein 1
.
Testfälle
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
Der kürzeste Code in Bytes gewinnt.