题目
描述
输出7有关数字的个数,包括7的倍数,还有包含7的数字(如17,27,37…70,71,72,73…)的个数
知识点
循环
运行时间限制
0M
内存限制
0
输入
一个正整数N。(N不大于30000)
输出
不大于N的与7有关的数字个数,例如输入20,与7有关的数字包括7,14,17.
样例输入 20
样例输出 3
思路
该题解题思路很简单,就是将每个数的个位、十位、百位、千位、万位取出来,然后看是不是等于7,如果是7或者模7为0,则结果加1。
//
// 挑7.cpp
// HuaWeiOJ
//
// Created by fy on 2017/3/22.
// Copyright © 2017年 fy. All rights reserved.
//
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int N = 0;
cin>>N;
int sum = 0;
for (int i = 1; i <= N; ++i) {
if((i/1000)%10 == 7 || (i%1000)/100 == 7 || (i%100)/10 == 7 || i%10 == 7 || i % 7 == 0)
sum++;
}
cout<<sum<<endl;
return 0;
}