为了账号安全,请及时绑定邮箱和手机立即绑定

每日一题:一 石头 ----- 这里注重算法和效率

每日一题:一 石头 ----- 这里注重算法和效率

烙印99 2019-03-01 10:50:37
比较无聊的一天,小明决定列举了一大堆石头。他先数了数石头,发现堆里有几块石头,然后到商店去买标签。每一个标签都是从0到9的数字,每一个石头都应该分配一个唯一的数字,从1到N。如果每个标签的成本是1美元,小明会花多少钱在这个项目上? function rocks(int $n): int { return ; } 其中: $n为石头数,且$n为大于1的正整数 返回为需要的成本 例子: 小明发现了13块石头: 则石头上的数字为: 1,2,3,4,5,6,7,8,9,10,11,12,13 所需要的标签为: 1,2,3,4,5,6,7,8,9,1,0,1,1,1,2,1,3 所需要的成本为: 17 祝君好运!
查看完整描述

4 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

function rocks(a) {
  var str = '';
  for(var i=1; i<=a; i++){
    str += i;
  }
  return str.length;
}
rocks(13);
查看完整回答
反对 回复 2019-03-01
?
慕森卡

TA贡献1806条经验 获得超8个赞

$arr=[1,6,9,99,884];
$str=implode('',$arr);//16999884
echo strlen($str);

查看完整回答
反对 回复 2019-03-01
?
炎炎设计

TA贡献1808条经验 获得超4个赞

function rocks(num) {
        var result = num, j = "";
        if(result <= 9) {
            return result;
        }
        result = 9;
        for(var i = 10; i <= num; i++) {
            j = i.toString();
            result += j.length;
        }
        return result;
}
查看完整回答
反对 回复 2019-03-01
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

function rocks($n)
{

$spend = 0;
for ($i=1; $i<=$n; $i++) {
    $spend += strlen($i); 
}
return $spend;

}

查看完整回答
反对 回复 2019-03-01
  • 4 回答
  • 0 关注
  • 478 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信