思路:先把所有的数字拼接成为一个大字符串,然后统计这个字符串中1出现的次数。
具体代码如下:
require 'test/unit'
class TestCountN < Test::Unit::TestCase
def test
assert_equal 6, count(13)
end
end
def add_all_number_to_str n
str = ""
for i in 1..n
str += i.to_s
end
str
end
def count n
c = 0
add_all_number_to_str(n).each_char {|x| c=c+1 if(x.to_i)==1}
c
end
分享到:
相关推荐
在Java编程中,统计一个长整型数字中0到9每个数字出现的次数是一项常见的任务,这在数据处理、分析或者算法实现中都有可能用到。这个任务可以通过使用位操作、数组或者HashMap等数据结构来解决。下面我们将详细介绍...
计算从1到n(一个正数)中,x(一个数字)出现的次数。
该C++程序通过循环的方式,实现了统计从0~9、0~99、0~999、0~9999、0~99999 ······ 中数字8出现的次数。
统计数字问题 一本书的页码从自然数1 开始顺序...程序运行结束时,输出有10行,在第k行输出页码中用到数字k-1 的次数,k=1,2,…,10。 Sample Input 11 Sample Output 1;4;1;1;1;1;1;1;1;1(竖着的!)
在本题目中,我们需要编写一个C语言程序,用于计算从1到给定正整数N之间所有整数中数字"1"出现的总次数。这是一个典型的字符串处理和数学计算问题,涉及到了数字转换、字符串遍历以及计数算法。下面我们将深入探讨这...
计算从1~n的奇数序列,统计3出现的次数,源于网络流传的一个段子。 实际上这题是Leetcode中一个题目的变种,即1~n中,1出现的次数。 该代码主要考虑缩减时间复杂性。其实原理与这个题目相同,稍作变化即可,把1换成...
在本题中,我们需要统计数字问题,即统计从 0 到 9 各个数字在所有 n 位数中的出现次数。该问题可以使用递推式 f(n) = n*10^(n-1) 进行解决,其中 n 是位数,f(n) 是在 n 位数中数字 0 到 9 的出现次数。 在 Java ...
数字统计问题要求对给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1,2,3,…,9。 编程任务: 给定表示书的总页码的十进制整数n(1<<n)。编程计算书的全部页码中分别用到多少次数字0,1,2,3,…,9。 数据...
- 输出:10个整数,表示数字0到9在小于等于n的所有正整数中出现的次数。 - **关键变量定义**: - `count[10]`:用来存储数字0到9出现的次数。 - `base`、`left`、`pren`:辅助变量,用于计算每一轮循环中的数字...
首先,使用 memset 函数将 num 数组初始化为 0,然后遍历每个页码,从 1 到 n,统计每个数字的出现次数。最后,输出每个数字的出现次数。 该方法的缺点是时间复杂度较高,不能对大规模数据进行处理。 代码二:公式...
本实验的主要目的是设计并实现一个程序,用于统计一个特定字符串中所有数字的出现次数,并按照数字从小到大的顺序输出这些数字及其出现次数。 #### 输入格式 - **Input**:输入只有一行,即一个包含各种字符(包括...
第一行只有一个数字N(1≤N≤10000),代表整数的个数。以后的N行每行有一个整数。 【输出形式】 向标准输出打印出现次数最多的那个数字。 【输入样例】 6 11 0 -1 20 0 300 【输出样例】 0 【样例说明】 ...
其核心思想是遍历从1到n的每一个数字,然后逐位分解每个数字,并统计每种数字出现的次数。具体步骤如下: 1. 初始化一个大小为10的数组`count`,用于存储0至9每个数字出现的次数,初始值均为0。 2. 从1开始遍历到n...
4. **再次遍历数组找到单次出现的数字**:再次遍历 `nums`,检查每个数字在 `match` 中出现的次数。如果次数不是3,那么将这个数字赋值给 `res`。由于只有一个数字出现一次,所以 `res` 最终会保存这个数字。 5. **...
1. **暴力法**:遍历整个数组,统计目标数字的出现次数。这种方法简单直观,但效率较低,时间复杂度为O(n)。 2. **排序+二分查找**:首先对数组进行排序,然后通过二分查找定位目标数字,并统计其出现次数。这种方法...
在本书《数字统计——算法分析》的第1.1章中,作者提出了一种有趣的数学问题:给定一本书的总页码为 \(n\),要求计算出在这本书的所有页码中,每个数字(0~9)出现的次数。这个问题不仅考验了我们对于数字序列的理解...
这个任务要求我们计算从1到一个给定整数n(包括1和n)之间所有整数中,0到9这十个阿拉伯数字出现的次数。这样的问题有助于提升我们对数字处理、循环逻辑以及数据结构的理解。 首先,我们需要一个方法来接收整数n...
题目要求我们编写一个程序,输入一个整数n(1 ≤ n ≤ 10^9),表示一本书的总页数,然后计算从1到n的所有页码中,每个数字0到9出现的频率。输出结果将被写入到output.txt文件中,每行对应一个数字的出现次数。 ...