Description
题目地址:
Solution
对于一个询问q,如果q是奇数,那么答案就是(q-1)/2
否则将不断q=q/2+n即可
Code
#includelong long n,x;int q;int main(){ scanf("%I64d%I64d",&n,&q); while(q--){ scanf("%I64d",&x); while(!(x&1)) x=(x>>1)+n; printf("%I64d\n",(x+1)>>1); } return 0;}
本文共 338 字,大约阅读时间需要 1 分钟。
题目地址:
对于一个询问q,如果q是奇数,那么答案就是(q-1)/2
否则将不断q=q/2+n即可
#includelong long n,x;int q;int main(){ scanf("%I64d%I64d",&n,&q); while(q--){ scanf("%I64d",&x); while(!(x&1)) x=(x>>1)+n; printf("%I64d\n",(x+1)>>1); } return 0;}
转载于:https://www.cnblogs.com/void-f/p/8537336.html