0
已解决
范皓翔
初级光能
初级光能
1038 与5相关的数
题目描述 Description
若一个正整数的十进制表示法中有一位为数字5,或者该正整数能够被5整除,则称这个数为与5相关的数。现给定一个正整数n,求不大于n的所有与5相关的数之和。
输入描述 Input Description
输入为一行,表示正整数n(0 < n < 100)
输出描述 Output Description
输出一行,包含一个整数,即小于等于n的所有与5相关的正整数之和。
样例输入 Sample Input
50
样例输出 Sample Output
275
请问这题代码为啥是62分:
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
int n,s=0;
cin>>n;
for(int i=1;i<=n;i++){
if(i%5==0){
s+=i;
}
else if(i%5==5){
s+=i;
}
}
cout<<s;
return 0;
}
1038:与5相关的数
Wrong Answer:62分
范皓翔的测评结果:
测试点
结果
时间
1
Accepted
0ms
偷看一下数据
2
Accepted
0ms
偷看一下数据
3
Accepted
0ms
偷看一下数据
4
Wrong Answer
0ms
偷看一下数据
5
Wrong Answer
0ms
偷看一下数据
6
Wrong Answer
0ms
偷看一下数据
7
Accepted
0ms
偷看一下数据
8
Accepted
0ms
偷看一下数据
0
已采纳
王子健
初级天翼
初级天翼
这道题相对来说很简单,只需要一个for循环和一个if嵌套一下就行了
循环就不用说了,都会,就是从1到n
那我来说一下if判断吧:
1.若一个正整数的十进制表示法中有一位为数字5,这个不知道你会不会,如果要正常找的话是要while循环的,但这题不用,为什么呢?
请看:
证明输入的数只有1,2或者3位,所以只要这样判断一下:if(i%10==5||i/10%10==5||i/100%10==5||i%5==0)
然后把i加进ans中,最后输出ans就行了,望采纳,谢谢。
1