微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数字出现的频率?

如何解决数字出现的频率?

我尝试在JavaScrip中解决此算法,但无法实现。我已经用Java完成了,但是找不到解决方法方法就是JS。如果有人可以告诉我并向我解释解决方案,我将不胜感激:)算法:

查找介于0和给定正整数(包括两个端点)之间的所有整数中给定数字出现的频率。

让我们说要计数的数字(我们称之为K)是2。

因此,在0到35之间,K(在本例中为2)出现了14次:

2、12、20、21、22(两次),23、24、25、26、27、28、29 32 = 14次

输入

输入包含2行。 第一行包含程序需要计数的数字(K)。 第二行包含数字N,它是检查K是否出现的范围内的最大数字(例如,介于0和N之间)。 所有数字均为正整数。没有小数或小数。

输出

打印出现在0到N之间(包括两者)的K数。 如果找不到,则打印0。

谢谢。

解决方法

可能的解决方案,可能会更有效。

let k = String(2);
let n = 35;
let s = String("");

// create string from numbers 0 to n
for (let i = 0; i <= n; i++) s += i;

// check each character for digit
let occurs = s.split('').reduce((a,x) => x === k ? a + 1 : a,0);

// print result
console.log(occurs);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。