https://leetcode.com/problems/minimum-array-end/
题目
做出一个长n的阵列 每一项要严格递增
整个阵列每一项做bitwise and后要是x
输出要是最小可能的最后一项
思路一:
x放第一项 后面的东西跟x and完还要是x
意思就是x bit是1的地方其他位也要是1
x bit是0的地方就随便
因为or的性质 A or B 时A里面的1会被保留
且A or (B+C)会大于等于A or B 大于等于 A
所以让x+1去or最开始的x n-1次就是答案了
C code
long long minEnd(int n,int x){
long long result=x;
while(n>1){
n