1 + 2 = 3?

发布时间: 2018年4月15日 22:46   最后更新: 2018年4月15日 23:25   时间限制: 1000ms   内存限制: 128M

埃森哲是《财富》全球500 强企业之一,目前拥有约41.1 万名员工,服务于120 多个国家的4000 家企业。我们的客户既包括《财富》世界100 强中的94 家公司、《财富》世界500 强中3/4 以上的公司,也有世界上最大的国家政府机构。小Y 看到这样的介绍之后非常想加入公司,于是投递了简历,简历中写到自己参加过ACM 比赛,其中印象最深刻的一道问题是他在为比赛研究数字的时候,发现了一个神奇的等式方程$x \oplus 2x = 3x$,他屈指算了一下有很多正整数$x$ 满足这个等式,比如$1$和$2$,现在问题来了,

他想知道从小到大第$N$个满足这个等式的正整数,请你用程序帮他计算一下。

($\oplus$表示按位异或运算)

第一行是一个正整数$T$($T \le 100$),表示查询次数。
接着有$T$行,每行有一个正整数$N$($N \le 10^{12}$),表示小Y的查询。

对于每一个查询$N$,输出第$N$个满足题中等式的正整数,并换行。

复制
4
1
2
3
10
1
2
4
18

2018

埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛