Sie erhalten 3 Ganzzahlen als Eingabe. Die Eingaben können sich voneinander unterscheiden oder nicht. Sie müssen 1 ausgeben, wenn alle drei Eingänge unterschiedlich sind, und 0, wenn ein Eingang mehr als einmal wiederholt wird.
Das ist Code-Golf , also mach deinen Code so kurz wie möglich!
code-golf
number
decision-problem
subin saju
quelle
quelle
Antworten:
Python 3 ,
232120 BytesProbieren Sie es online!
quelle
lambda*a:len({*a})//3
1 == True
, ich glaube, irgendwo gibt es einen Meta-Post dazuFalse * True
is0
;False + True
ist1
; etc ...Perl 6 , 7 Bytes
Probieren Sie es online!
quelle
R , 13 Bytes
Eine andere Lösung als bei @Kirill, wenn Sie es
mad()
für einen nicht beabsichtigten Zweck verwenden!Probieren Sie es online!
quelle
mad
genau zu diesem Zweck erfunden .R ,
242220 BytesProbieren Sie es online!
Gibt einen Booleschen Wert zurück, aber wie bereits in der Python-Antwort beschrieben , sollte dies in Ordnung sein.
Dank digEmAll für das Speichern von 2 Bytes.
quelle
>0
fürTRUE/FALSE
in 13 Bytes ausgegeben.JavaScript, 22 Byte
Wenn wir boolesche Werte ausgeben können, können die letzten 2 Bytes entfernt werden.
Probieren Sie es online aus
Dies funktioniert bei gleicher Byteanzahl für Arrays beliebiger Größe, setzt jedoch voraus, dass die Eingabe niemals a enthält
0
und die Ausgabe ein Boolescher Wert ist.Probieren Sie es online aus
quelle
a=>new Set(a).size>2
&1
für 22 Bytes anheften.Ruby , 16 Bytes
Probieren Sie es online!
quelle
uniq!
Cubix ,
5525 Bytes-29 danke an Jo King
Probieren Sie es online!
Es sollte möglich sein, einige Bytes abzuspielen.
quelle
@
Stelle.
an der neunten Stelle verpassen . Lässt es einige flippige Dinge für 1 2 2 tun.05AB1E , 2 Bytes
Probieren Sie es online aus oder überprüfen Sie weitere Fälle .
Erläuterung:
quelle
1
der einzige Wahrheitswert in 05AB1E ist,¢P
funktioniert ebenso wie eine alternative 2-Byte-Methode.4
, zum Beispiel ist weder1
noch0
, noch verhält es sich wie1
oder0
(wieTrue
undFalse
mach es in Python). Die Frage sollte wahrscheinlich nach Truthy / Falsey gestellt werden, aber derzeit nicht.Mathematica, 13 Bytes
Funktion pur. Nimmt drei Ganzzahlen als Eingabe und gibt
0
oder1
als Ausgabe zurück. Ich weiß, dass dies der Antwort von David G. Stork ziemlich ähnlich ist , aber es macht SinnSlotSequence
, ein Byte (im Vergleich zuBoole@*Unequal
) abzuschneiden .quelle
Brainfuck , 91 Bytes
Probieren Sie es online!
Wie es funktioniert
quelle
Japt
-N
, 3 BytesVersuch es
Erläuterung
Uâ
dedupliziert die Eingabe unde
prüft, ob sie dem Original entspricht.quelle
J , 4 Bytes
Probieren Sie es online!
Erläuterung:
Ist das Argument gleich
-:
sich selbst nach dem Entfernen der Duplikate~.
quelle
C (gcc) ,
25 bis26 BytesProbieren Sie es online!
quelle
K (oK) , 4 Bytes
Probieren Sie es online!
Ist die Anzahl der verschiedenen Elemente gleich 3?
quelle
Powershell,
2725 Bytes-2 Bytes danke @AdmBorkBork
Testskript:
Erläuterung:
quelle
+(($args|group).count-eq3)
Gelee , 2 Bytes
Probieren Sie es online!
quelle
Common Lisp,
252 BytesProbieren Sie es online!
-23 Bytes dank @ceilingcat!
quelle
APL (Dyalog Unicode) , 3 Byte SBCS
Anonyme implizite Präfixfunktion. Nimmt Liste als Argument.
Probieren Sie es online!
∪
erledigt die Menge der eindeutigen Elemente aus dem Argument≡
Spiel⊢
das unveränderte argument?quelle
Sauber , 32 Bytes
Probieren Sie es online!
quelle
Attache , 10 Bytes
Probieren Sie es online!
Dies ist eine Gabelung des Bedieners
`==
undUnique
entspricht:Alternativen
{#_=#Unique[_]}
(15 Bytes)Any##Same=>Pairs@Sort
(21 Bytes)Any@{`=&>_[[0'1,1'2,2'0]]}
(26 Bytes)&${not(x=y or y=z or x=z)}
(26 Bytes)&${x/=y and y/=z and x/=z}
(26 Bytes){Any!Same=>Chop&2!_[0'1'1'2'2'0]}
(33 Bytes)quelle
Java 9,
4327 Bytesdanke an @Olivier Grégoire
Vorheriger Versuch:
quelle
(a,b,c)->a!=b&b!=c&a!=c?1:0
.==
Dies gilt nicht fürString
Probleme, auf die Sie hier stoßen (nach der Korrektur der Kompilierung). Im zweiten Code wird dieSet.of
Methode ausgelöst,IllegalArgumentException
wenn ein Duplikat bereitgestellt wird . Ich bin versucht, -1 für überhaupt nicht testen.Rot , 21 Bytes
Probieren Sie es online!
quelle
T-SQL, 39 Bytes
Die Eingabe wird als separate Spalten genommen a, b, c aus einer bereits bestehenden Tabelle s , je unsere IO - Standards .
Es wurde versucht, eine Variation
COUNT DISTINCT
aus Eingaben zu verwenden, die als separate Zeilen verwendet wurden, die jedoch einige Bytes länger waren.quelle
Pyth, 3 Bytes
Übernimmt die Eingabe als Liste.
Probieren Sie es hier aus
Erläuterung
Wenn wir True und False als 1 und 0 behandeln dürfen (was in Pyth unter der Haube liegt), können wir das fallen lassen
s
, um auf 2 Bytes zu kommen.quelle
SmileBASIC,
2524 Bytesquelle
Brachylog , 6 Bytes
Probieren Sie es online!
kurze Erklärung
d?
d edupliziert die Eingabe eines Tests, wenn er noch gleich der Eingabe ist ( ? ) entspricht.∧1
wenn wahr, gebe 1 zurück|0
Andernfalls wird 0 zurückgegebenquelle
> <> ,
1917 Bytes-2 Bytes von Jo King.
Probieren Sie es online!
quelle
q 14 Bytes
Technisch gesehen gibt diese Lösung '1b' oder '0b' zurück. Dies ist die Art und Weise, wie ein Boolescher Wert von einem numerischen Typ unterschieden wird, obwohl er alle arithmetischen Funktionen beibehält und im Wesentlichen eine 1 oder 0 ist:
Um 1 oder 0 ohne Booleschen Wert zurückzugeben, haben Sie den folgenden Wert, der die Byteanzahl auf 21 setzt
quelle
{1&/0N>':x?x}
JavaScript (Node.js) , 67 Byte
Probieren Sie es online!
quelle
Gelee ,
56 BytesProbieren Sie es online!
Von 5 auf 6 Bytes, da dies mein erstes Mal ist und ich es jetzt durcheinander gebracht habe (whoops)
quelle
3 integers
oder funktioniert er nur für drei Ziffern?