ZOJ Monthly, January 2019-Little Sub and Pascal's Triangle

这个题的话,它每行奇数的个数等于该行行号,如果是0开始的,就该数的二进制中的1的个数,设为k,以它作为次数,2k就是了。

#include <stdio.h>
int main()
{
	int t;
	long long k;
	scanf("%d",&t);
	getchar();
	while (t--) {
		scanf("%lld",&k);
		long long ans=1;
		k=k-1;
		while (k>0) {
			if (k&1==1) {
				ans=ans<<1;
				k=k>>1;
			}
			else k=k>>1;
		}
		printf("%lld\n",ans);
	}
}

猜你喜欢

转载自blog.csdn.net/qq_41090676/article/details/86555222