Sie wurden von der Regierung von North Dakota beauftragt, die Kommunikation des Staates zu verschlüsseln. Schreiben Sie zwei Programme, eines zum Verschlüsseln einer Nachricht und eines zum Entschlüsseln dieser Nachricht.
Die Regierung ist nicht wirklich technisch versiert, daher muss der Verschlüsselungsalgorithmus nicht ausgefeilt sein. Stellen Sie einfach sicher, dass das Ergebnis auf den ersten Blick nicht dem Original ähnelt.
Sie sind der süddakotischen Regierung jedoch insgeheim treu. Ihre Aufgabe ist es, die Kommunikation so North Dakota
zu South Dakota
vertauschen, dass jede Erwähnung entschlüsselt wird und umgekehrt. Dies gilt auch für North/South Dakotan
und North/South Dakotans
.
Beispielsweise:
North Dakota ist die reichste Grafschaft in Nordamerika, während South Dakotans ärmer sind als Südflorida. - die Regierung von North Dakotan
wird verschlüsselt und dann entschlüsselt, was zu folgenden Ergebnissen führt:
South Dakota ist die reichste Grafschaft in Nordamerika, während North Dakotans ärmer sind als Südflorida. - die Regierung von South Dakotan
Der Algorithmus, der dies auf geheimnisvollste und kniffligste Weise bewerkstelligt, was durch die meisten positiven Stimmen belegt wird, wird akzeptiert.
string.replace
Arbeit? Weil Sie sagten, die Leute sind nicht wirklich in Technologie;)Antworten:
Rubin
Demo
quelle
CJam
Dies ist der Encoder:
und das ist der Decoder:
Probieren Sie es hier online aus
Dies funktioniert nur mit Kapital
N
,S
undD
inNorth/South Dakota
Übergeben Sie die Eingabezeichenfolge an die erste Funktion von STDIN. Rufen Sie die codierte Zeichenfolge ab und übergeben Sie sie an die zweite Funktion, um die decodierte und konvertierte Ausgabe abzurufen.
quelle
.
zwischenHaHaHaHa!
undThe
?364380128038419794871782113211824472986419260504039724627500790722811712426518562428698978399810134993565366126560239807690210155343815201005388714282
.Java
Ich habe festgestellt, dass die Division durch Null in diesem Programm keine Fehler verursacht. Dieses Programm codiert die Strings vollständig in eine Form, die nicht auf die Regierung von North Dakotan zurückgeführt werden kann. Aufgrund des oben erwähnten seltsamen Verhaltens funktioniert das Codieren und Decodieren möglicherweise nicht in allen Fällen ordnungsgemäß.
Frage: Was macht
funnyNumber
gleich?quelle
join
derString
Klasse eine statische Methode hinzugefügt ? * Stille Feier! *funnyNumber
hat einen Wert voni - 2
. Ich persönlich habe nicht das Gefühl, dass das Verstecken von Zeichen in Unicode sehr hinterhältig ist.i - 2
.\u
das außerhalb von Streichern funktioniert.System.out.println(2+\u002f*2/0*\u002f+-2)
.JavaScript
Meine Lösung ist wahrscheinlich nicht die klügste. Aber es funktioniert :) Hier ist eine Geige
Zuerst ersetze ich
north d
mithisdf
undsouth d
mithisde
, dann invertiere ich alle Zeichen bitweise und schiebe sie in ein Array. Das Array konvertiere ich in einen String und ersetze dann die invertierten Zeichenwerte durch die richtigen. Vorher ersetze ich die Werte vonhisdf
undhisde
schalte um.quelle
hisde
irgendwo enthalten ist ?north d
undsouth d
:)AWK: Encoder: 165 Bytes, Decoder: 61 Bytes
Der Encoder (auch verantwortlich für das Ersetzen von Süd durch Nord und umgekehrt):
Der Decoder:
Einige test:
kodiert in:
(Das sollte genug für eine nicht wirklich technisch versierte Regierung sein : o))
Es dekodiert dann in:
Aber das war zu erwarten: o)
Hinweis: North Dakota, North Dakotan, North Dakotans, South Dakota, South Dakotan und South Dakotans müssen korrekt großgeschrieben werden.
quelle
C
Kompilieren mit:
gcc -Wall -Wextra -Wno-missing-field-initializers -Wimplicit -Wreturn-type -Wunused -Wformat -Wswitch -Wshadow -Wwrite-strings -DGCC_WARN -ansi -pedantic file.c
Für maximales Übel, geschrieben in K & R C mit einem Schuss Zeigermissbrauch.
Lasciate ogni speranza, voi ch'entrate.
Buśhaīila rukgâī, naǵkxarańga ba tdhuløk.
Auch ist alles in der
bits
Funktion und dergenkey
Funktion.Lauf:
Hinweis: Wenn Sie den Schlüssel im
decrypt
Modus angeben, müssen Sie möglicherweise einige der Zeichen im Schlüssel mit Backslashes maskieren.quelle
JavaScript, ES6
Zunächst süß und einfach.
Encoder:
Decoder:
Probieren Sie es unter einem aktuellen Firefox aus:
quelle
dakotan
mitdakota
:)North Dakotan
North Dakota