Maximum XOR
Mala Marica mnogo voli probleme sa bitovnim operacijama. Evo jednog takvog problema.
Data su dva prirodna broja l i r. Posmatrajmo vrednosti a⊕b za sve parove prirodnih brojeva a i b (l ≤ a ≤ b ≤ r). Vaš zadatak je da pronađete najveću od tih vrednosti.
Izraz x⊕y podrazumeva bitovnu ekskluzivnu disjunkciju nad brojevima x i y. Data operacija postoji u svim modernim programskim jezicima, na primer, u jezicima C++ i Javi je predstavljena operatorom "^", a u Pascalu — kao «xor».
InputU jedinom redu standardnog ulaza nalaze se prirodni brojevi l i r (1 ≤ l ≤ r ≤ 10^18).
OutputU prvom i jedinom redu standardnog izlaza ispisati jedan prirodan broj — maksimalnu vrednost a⊕b za sve parove prirodnih brojeva a, b (l ≤ a ≤ b ≤ r).
Ulaz:
Izlaz:
1 2Izlaz:
3Ulaz:
Izlaz:
8 16Izlaz:
31Ulaz:
Izlaz:
1 1Izlaz:
0Submit solution
Coming laterThe grading service will be connected in a later migration step. You can inspect the task and your previous results now.