php实现 求int型数据在内存中存储时1的个数(函数都可自己实现)

php实现 求int型数据在内存中存储时1的个数(函数都可自己实现)

一、总结

一句话总结:函数我们自己都可以实现,尤其是很多基础函数,没有工具的时候自己写。

1、php进制转换函数?

base_convert进制转换函数

5 $bin = base_convert($dec, 10, 2);;

2、php十进制转化成2进制函数?

dexbin,dex为10,bin,也很好记

3     $bin = decbin($input);

3、php统计一个字符串中某字符出现的次数?

substr_count()

6 echo substr_count($bin, "1").PHP_EOL;

二、求int型数据在内存中存储时1的个数

题目描述

输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。

输入描述:

输入一个整数(int类型)

输出描述:

这个数转换成2进制后,输出1的个数

示例1

输入

复制

5

输出

复制

2

代码:

 <?php
$input = intval(trim(fgets(STDIN)));
$output = 0;
while(0 < $input){
if(1 == $input%2)
$output++;
$input = floor($input/2);
}
echo $output;
 <?php
$dec = "";
$bin = "";
fscanf(STDIN, "%s", $dec);
$bin = base_convert($dec, 10, 2);;
echo substr_count($bin, "1").PHP_EOL;
 <?php
$input = trim(fgets(STDIN));
$bin = decbin($input);
echo substr_count($bin, '1');

decbin — 十进制转换为二进制

string decbin ( int $number )

 
上一篇:LeetCode70——爬楼梯


下一篇:sublime text 2 快捷键