原题目链接:
点击打开链接
参考思路(摘自杭电Discuss):
/***************************************************************************
* *
* 秒钟的速度s=6°/s,分针是1/10°/s,时针是1/120°/s *
* 所以相对速度s_m=59/10°/s,s_h=719/120°/s,m_h=120/11°/s *
* 所以相差一度所需要的时间sm=10/59 s/°,sh=120/719 s/°,mh=120/11 s/° *
* 他们差360°的周期为tsm=3600/59 s,tsh=43200/719 s,tmh=43200/11 s *
* 需要相差的角度为n。 *
* rsm>n → n*sm+k1*tsm < t < tsm-n*sm+k1*tsm; *
* rsh>n → n*sh+k2*tsh < t < tsh-n*sh+k2*tsh; *
* rmh>n → n*mh+k3*tmh < t < tmh-n*mh+k3*tmh; *
* 三个条件都满足所占的总时间即为时针、分针、秒针相差角度大于n的总时间 *
* *
*************************************************************

该博客分享了一道杭电(杭州电子科技大学)的编程题,题号为1006,主要内容是计算时钟指针在不同速度下形成相同角度的时间长度。博主给出了参考思路和代码实现,代码使用C++编写,并提到可能存在的浮点数精度问题导致结果不精确,但通过调整输出格式,使结果满足AC(Accepted)标准。
最低0.47元/天 解锁文章
4万+

被折叠的 条评论
为什么被折叠?



