A-种植所有植物所需时间_浙江广厦大学第七届程序设计比赛 (nowcoder.com)
我是这样写的,没通过:
#include<bits/stdc++.h>
#define int long long
using namespace std;
int sum;
signed main(){
cin.tie(nullptr)->sync_with_stdio(false);
int n;cin>>n;
for(int i=0;i<n;i++)
{
int x;cin>>x;
sum+=x;
}
cout<<sum/50*5;
return 0;
}
原因
没有考虑除法运算不一定会整除,可能会产生浮点数.因为题目要求结果为整数,如果出现了浮点数我们还需要向上取整
正解
#include<bits/stdc++.h>
using namespace std;
int sum;
int main(){
cin.tie(nullptr)->sync_with_stdio(false);
int n;cin>>n;
long long sum=0;
for(int i=0;i<n;i++)
{
int x;cin>>x;
sum+=x;
}
long long ans=0;
ans=(long long) (ceil(sum/50.0))*5;
printf("%lld\n",ans);
return 0;
}