2209: 特殊求和

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:11 解决:10

题目描述

如果一个数能够被7整除或者十进制表示中含有数字7,那么我们称这个数为幻数,

比如17,21,73是幻数,而6,59不是。

对于给定的N,求出1~N中所有幻数的和。

输入

一个整数N(1 < N < 10000)。

输出

一个整数,表示1~N中所有幻数的和。

样例输入 复制

14

样例输出 复制

21

提示

#include<bits/stdc++.h>
using namespace std;

int main(){
    int n,ans=0;
    cin>>n;
    for (int i=1;i<=n;i++) {
    	int m=i;
    	if (m%7==0) {
    		ans+=i;
		}else {
			while (m>0) {
				if (m%10==7) {
					ans+=i;
					break;
				}
				m/=10;
			} 
		}
	}
    cout<<ans;
	return 0;
}