hdu-1036(格式题+精确度)

时间:2022-03-01 06:31:19

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1036

心得:注意,要进行四舍五入的精确可以用+0.5实现。

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
char str[];
int main(void)
{
double tim,dis;
int pt,n,i,h,mm,ss,t1,t2;
scanf("%d %lf",&n,&dis);
while(~scanf("%d",&pt))
{
int fg=;
tim=;
for(i=;i<n;i++)
{
scanf("%s",str);
if(str[]=='-') fg=;
else
{
h=str[]-'';
mm=(str[]-'')*+(str[]-'');
ss=(str[]-'')*+(str[]-'');
tim+=h*+mm*+ss;
}
}
printf("%3d:",pt);
if(fg==)
{
printf(" -\n");
}
else
{
int sum=(int)(tim/dis+0.5);
t1=sum/,t2=sum%;
printf(" %d:%02d min/km\n",t1,t2);
}
}
return ;
}