zoukankan      html  css  js  c++  java
  • 求1到n的正数中1出现的次数

    题目:输入一个整数n,求1到n这n个整数十进制表示中1出现的次数。

    举例:输入12,从1到12这些整数中包含1的数字有1, 10, 11,和12,1一共出现了5次。

    答:

    #include "stdafx.h"
    #include <iostream>
    
    using namespace std;
    
    int Count(int num)
    {
        int count = 0;
        while (num)
        {
            if (1 == num % 10)
            {
                count++;
            }
            num = num /10;
        }
        return count;
    }
    
    int FindOneNumber(int n)
    {
        if (n <= 0)
        {
            return 0;
        }
        int total = 0;
        for (int i = 1; i <= n; i++)
        {
            total += Count(i);
        }
        return total;
    }
    
    int _tmain(int argc, _TCHAR* argv[])
    {
        cout<<FindOneNumber(12)<<endl;
        return 0;
    }

    运行界面如下:

  • 相关阅读:
    大数减法
    MySQL配置的一些坑
    最大流_Edmonds-Karp算法
    最小生成树两连
    最短路三连
    对拍
    Broadcast
    Intent
    Custom Views
    Fragment
  • 原文地址:https://www.cnblogs.com/venow/p/2656894.html
Copyright © 2011-2022 走看看