c++ - 查找数字数组中出现的特定数字的数量 (C++)

标签 c++ arrays numbers digit

我正在进行在线挑战,挑战如下: “ children 正在玩一个叫做“数数”的游戏。对于给定的数字 S 和 K,他们首先写下这些数字之间的所有数字,然后计算每个数字出现的次数(0,1,2,3,4,5,6 ,7,8,9). 比如S=767, K=772, 数字就是: 767,768,769,770,771,772

因此,0 将显示一次(在 770 年),1 将显示一次(在 771 年)等等。

基本上,我的程序必须执行以下操作(给出示例):

输入: 1 9 (这些是数字 1,2,3,4,5,6,7,8,9)

输出: 0 1 1 1 1 1 1 1 1 1 (0 不显示,其他数字显示一次)。”

我被困在这段代码上……没有想法。

#include <iostream>

using namespace std;

int main()
{
    int s,k;
    int array[10];
    int c0=0,c1=0,c2=0,c3=0,c4=0,c5=0,c6=0,c7=0,c8=0,c9=0;
    cin >> s >> k;
    int saves = s;
    int savek = k;
    cout << s%10;
    for(int i=s;i<=k;i++)
    {
        int savei=i;
        while(savei!=0)
        {
            savei=savei%10;
        }
    }

欢迎任何伪代码/片段/代码/提示。

最佳答案

纯数值问题的纯数值解:

#include <iostream>

int main()
{
    int s, k, i, tmp;
    std::cin >> s >> k;

    int count[10] = { 0 };

    for (i = s; i <= k; i++) {
        tmp = i;
        do {
            count[tmp % 10]++;
            tmp /= 10;
        } while(tmp);
    }

    for (i = 0; i < 10; i++) {
        std::cout << i << " appears " << count[i] << " times" << std::endl;
    }

    return 0;
}

关于c++ - 查找数字数组中出现的特定数字的数量 (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15173354/

相关文章:

c++ - 我的代码中的 “Peel/Remainder”循环无效

c++ - 将数组分配给数组

python - 从 CSV 文件读取时对数组的数值运算

javascript - 使用javascript中的reduce对数组中的变量求和

java - 从另一个号码获取不太具体的号码

javascript - 如何使用 JavaScript 将联系人添加到 Blackberry Web 应用程序(如果可能)?

java - 从 BufferedReader(InputReader) 输入中解析 Integer.class

c++ - 将 Node.js 缓冲区传递给 C++ 插件

c# - 使用 C# Regex 查找 C++ 代码模式(定义和 emuns)

javascript - 用数组检测运动范围