Problem8364--基础函数使用 —— __builtin_popcount

8364: 基础函数使用 —— __builtin_popcount

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

__builtin_popcount()  is a built-in function of GCC compilerTime Complexity(b), where $b$ is the number of bits.

学习如何使用 __builtin_popcount() 函数。
该函数用于计算一个 32 位无符号整数有多少个位为 1。
例如 n=3,对应的二进制为 $(11)_2$,也就是包含两个 1。
这是一个内建函数。一共有三个,分别用于处理不同的数据范围。作用都是一样的。
int __builtin_popcount(unsigned int)
int __builtin_popcountl(unsigned long int)
int __builtin_popcountll(unsigned long long int)


Input

一行一个整数 $n\ (0 \leq n \leq 2^{32})$。

Output

一行一个整数,表示答案。

Sample 1 Input

3

Sample 1 Output

2

Sample 2 Input

63

Sample 2 Output

6

Sample 3 Input

2147483647

Sample 3 Output

31

4294967295

32

Source/Category