#ARC161B. 恰好三个二进制位

恰好三个二进制位

恰好三个二进制位

时间限制:2s
空间限制:1024MB

题目描述

定义 f(X)f(X) 为正整数 XX 的二进制表示中 1 的个数。对每个给定的 NN,求不超过 NN 且满足 f(X)=3f(X)=3 的最大正整数 XX;若不存在则输出 −1-1。

输入格式

第一行一个整数 TT,接下来 TT 行每行一个整数 NN。

输出格式

对每组询问输出一行答案。

样例输入 1

4
16
161
4
1000000000000000000

样例输出 1

14
161
-1
936748722493063168

数据范围

对于所有数据,1≤T≤1051\le T\le10^5,1≤N≤10181\le N\le10^{18}。

子任务编号 分值 特殊限制
1 15 T≤20T\le20 且 N≤106N\le10^6
2 25 每个 NN 的二进制表示恰有三个 1
3 30 N<231N<2^{31}
4 无特殊限制