시간 제한메모리 제한제출정답맞힌 사람정답 비율
0.1 초 1024 MB1211787.500%

문제

On antud positiivne täisarv $a$. Vaja on valida täisarv $b$ ($1 \le b \le a - 1$) nii, et arvude $a \oplus b$ ja $a \otimes b$ suurim ühistegur oleks maksimaalne võimalik, ja väljastada see ühistegur. Teisisõnu on vaja leida funktsiooni $$f(a) = \max_{0<b<a} \gcd(a \oplus b, a \otimes b)$$ väärtus $f(A)$, kus $\oplus$ tähistab tehet "bitikaupa välistav VÕI" ja $\otimes$ tehet "bitikaupa JA". Nende tehete väärtused ühebitistel arvudel on:

$a$ $b$ $a \oplus b$ $a \otimes b$
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

Pikematele arvudele rakendatakse neid tehteid nii, et vaadeldakse operandide kahendesitusi, sooritatakse tehted nende vastavate bittide vahel ja saadud tulemused moodustavad vastuse kahendesituse. Mõned näited:

Tehe 10-süsteemis Tehe 2-süsteemis Tulemus 2-süsteemis Tulemus 10-süsteemis
$5 \oplus 3$ $101 \oplus 11$ $110$ $6$
$5 \otimes 3$ $101 \otimes 11$ $1$ $1$
$7 \oplus 42$ $111 \oplus 101010$ $101101$ $45$
$7 \otimes 42$ $111 \otimes 101010$ $10$ $2$

입력

Faili esimesel real on päringute arv $N$ ($1 \le N \le 1\,000$) ja järgmisel $N$ real igaühel üks täisarv $A_i$ ($2 \le A_i < 2^{25}$).

출력

Faili väljastada $N$ rida. Faili reale number $i$ väljastada $f(A_i)$ väärtus.

예제 입력 1

3
2
3
5

예제 출력 1

3
1
7

$A_1 = 2$ jaoks on optimaalne $B = 1$. Siis $2 \oplus 1 = 3$, $2 \otimes 1 = 0$ ja $\gcd(3, 0) = 3$.

$A_2 = 3$ jaoks on optimaalne $B = 2$. Siis $3 \oplus 2 = 1$, $3 \otimes 2 = 2$ ja $\gcd(1, 2) = 1$.

$A_3 = 5$ jaoks on optimaalne $B = 2$. Siis $5 \oplus 2 = 7$, $5 \otimes 2 = 0$ ja $\gcd(7, 0) = 7$.