Verwenden Sie jedes dieser Symbole mindestens einmal in Ihrem Quellcode:
! " # $ % & ' () * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
Symbole in Kommentaren, String-Literalen, Regexps (oder anderen Arten von Literalen usw.) zählen nicht (aber ihre Begrenzer wie /**/
oder ""
zählen).
Das Programm sollte keine Aktion ausführen. Es muss nur kompiliert werden und beim Ausführen nichts tun.
Wenn aus irgendeinem Grund einige der Symbole nicht in der Sprache Ihrer Wahl verwendet werden können, erklären Sie dies genau (was und warum muss ausgeschlossen werden).
Update: Einige Antworten verwendeten Symbole mit regulären Ausdrücken. Ich halte das für etwas problematisch, es ist dasselbe wie das Einfügen in Zeichenkettenliterale oder Kommentare (deshalb setze ich usw. in diese Anforderung ein). Bitte versuchen Sie es ohne diese. Ich habe auch die obigen Anforderungen aktualisiert.
Update: Kürzester Code gewinnt (markiert als Code-Golf ). Wie vorgeschlagen, werden wir höchstwahrscheinlich ein paar Kriterien brauchen, nach denen der Gleichstand gewährleistet ist. Ich schlage vor, dass bei einem Gleichstand die ASCII-Symbole so geordnet wie möglich angezeigt werden. Formal: Filtern Sie das erste Vorkommen aller aufgelisteten Symbole aus einem Programm heraus. Dies führt zu einer Permutation der aufgelisteten Symbole. Das Programm mit der geringeren Inversionszahl seiner Permutation gewinnt.
Update: Ich würde mich freuen, einige / mehr Lösungen in regulären / Standard-Sprachen zu sehen, wie C (++), Java, Scala, Haskell usw.
#
, @
und `außerhalb jeglicher Art von Literal nicht legal
@%
das Backtick kann in c erscheinen, außer als Teil eines Literales (in ausreichend neuen Versionen%
kann c in Digraphen erscheinen). (und#
erscheint nur in Präprozessor-Direktiven, aber damit müssen wir einfach leben)? Das heißt, ich fordere, dass Matts Ansatz ausdrücklich legalisiert wird.