Manchmal ist es erforderlich, Operationen auf Paaren von Binärzahlen durchzuführen. Wenn wir beispielsweise zwei Zahlen a und b haben, möchten wir vielleicht alle Bits auf 0 setzen, bis auf diejenigen, die sowohl in a als auch in b den Wert 1 haben (entspricht einer AND-Operation). Oder wir möchten alle Bits auf 1 setzen, an denen entweder a oder b eine 1 hat (entspricht einer OR-Operation).
exklusives OR
a
b (OR)
a
a ^ b (XOR)
binäre und dezimale Darstellungen
binäre und dezimale Darstellungen
1, wenn sowohl als auch eine 1 haben, sonst 0
1, wenn entweder oder eine 1 haben, sonst 0
1, wenn sich die Bits unterscheiden, sonst 0
110 (6)
101 (5)
100 (4)
111 (7)
011 (3)
100111 (39)
010100 (20)
100 (4)
110111 (55)
110011 (51)
Herausforderung
Gegeben sind n ganze Zahlen. Du sollst zwei dieser Zahlen finden, deren OR den größten möglichen Wert ergibt.
Eingabe
Die erste Zeile der Eingabe enthält eine einzelne ganze Zahl n (1 ≤ n ≤ 1000).
Die nächste Zeile enthält n durch Leerzeichen getrennte ganze Zahlen (1 ≤ ≤ ).
Ausgabe
Die Ausgabe soll den größten Wert enthalten, der sich durch Anwenden einer OR-Operation auf zwei der gegebenen Zahlen erreichen lässt.
Beispiele
Eingabe
Ausgabe
5 1 2 3 4 5
7
Erklärung
Wir können 7 erhalten, indem wir OR auf folgende Paare anwenden: