2886:二进制高手

时间限制:1 S   /  内存限制:65536 KB
AC:32   /  Submit:215
问题描述

罗少是二进制高手,他非常喜欢$$2$$的非负整数次幂,例如:$$1,2,4,8...$$

这天,罗少恰好在研究$$32$$位无符号型整数$$\text{unsigned int}$$

他发现对于任意一个$$32$$位无符号型整数$$n$$总是可以通过若干次加$$2$$操作变成$$2$$的非负整数次幂!

现在,给你一个非负整数$$n$$,请你编程计算一下$$n$$至少需要加几次$$2$$才能变成$$2$$的非负整数次幂。

输入描述

第一行是一个正整数$$T$$表示测试案例的数量。($$1 \leq T \leq 10^4$$)

每组案例包含一个$$\text{unsigned int}$$类型的数字$$n$$。($$0 \leq n \lt 2^{32}$$)

输出描述

针对每组案例,在一行中输出$$n$$至少需要加几次$$2$$才能变成$$2$$的非负整数次幂。

样例输入复制样例

3

6

1

10

样例输出

1

0

3

提示说明

思考 C++ 中 unsigned int 的溢出现象

相关

TKK-ICPC Round#8

23-24(2)第4次线上赛


Copyright 2016 - 2024 XUJC ACM Team
闽ICP备2020022076号-1