华为机试HJ55:挑7

简介: 华为机试HJ55:挑7

题目描述:

输出7有关数字的个数,包括7的倍数,还有包含7的数字(如17,27,37...70,71,72,73...)的个数(一组测试用例里可能有多组数据,请注意处理)

输入描述:

一个正整数N。(N不大于30000)

输出描述:

不大于N的与7有关的数字个数,例如输入20,与7有关的数字包括7,14,17.

示例:

输入:

20

10


输出:

3

1

解题思路:

本题比较直接,直接统计能被7整除的数字还有包含7的数字,其中包含7的数字统计,可以通过将数字转化为字符串的形式分析,也可以将数字按位次查找,即先分析余数再进行除法。

测试代码:

#include <iostream>
#include <string>
using namespace std;
int statistics(int num)
{
    int result=0;
    for(int i=7;i<=num;++i)
    {
        int temp=i;
        if(i%7==0)
            result++;
        else{
            while(temp!=0)
            {
                if(temp%10==7)
                {
                    result++;
                    break;
                }
                temp/=10;
            }
        }
    }
    return result;
}
int main()
{
    int number;
    while(cin>>number)
    {
        cout<<statistics(number)<<endl;
    }
    return 0;
}


相关文章
华为机试HJ103:Redraiment的走法
华为机试HJ103:Redraiment的走法
207 2
|
测试技术
华为机试HJ77:火车进站
华为机试HJ77:火车进站
143 1
华为机试HJ88:扑克牌大小
华为机试HJ88:扑克牌大小
135 0
|
算法 测试技术
华为机试HJ67:24点游戏算法
华为机试HJ67:24点游戏算法
144 0
|
存储
华为机试HJ43:迷宫问题
华为机试HJ43:迷宫问题
123 0
|
测试技术
华为机试HJ24:合唱队
华为机试HJ24:合唱队
121 0
|
存储 测试技术 Windows
华为机试HJ19:简单错误记录
华为机试HJ19:简单错误记录
|
机器学习/深度学习 C++
华为机试HJ16:购物单
华为机试HJ16:购物单
|
机器学习/深度学习 算法 数据安全/隐私保护
华为机试HJ28:素数伴侣
华为机试HJ28:素数伴侣
142 0