hdu5705
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5705
题目:
1. The angle formed by the hour hand and the minute hand is a
2. The time may not be a integer(e.g. 12:34:56.78), rounded down(the previous example 12:34:56).
Input
Each test case contains two lines.
The first line is the time HH:MM:SS(0≤HH<12,0≤MM<60,0≤SS<60)
The second line contains one integer a(0≤a≤180)
题意:给出时间 HH:MM:SS 角度a 问下一个H和M的角度为a的时刻?
思路:
时针每小时30度,每分钟30/60度,每秒1/120 (3600,60,1)
分针每小时360,每分钟6度,每秒6/60,1/10度; (,720,12)避免精度问题全部乘以120
算出h,m初始角度 h,m之间角度为deg=abs(h-m),暴力枚举几秒后deg==a即可,O(T)
参考:http://www.bubuko.com/infodetail-2051662.html
代码:
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> ii;
const double eps=1e-;
const int N=2e5+;
int a;
int main()
{
int cas=;
int h,m,s;
while(~scanf("%d:%d:%d",&h,&m,&s))
{
cin>>a;
a*=;
int sum=h*+m*+s;//总的时间(秒)
//h,m初始角度
int hh=sum%(*);
int mm=(sum*)%(*); int ans=;//暴力枚举几秒后
while(true)
{
hh=(hh+)%(*);//时针每秒1/120度,但由于乘了120,所以每次+1度
mm=(mm+)%(*);//分针每秒1/10度,但由于乘了120,所以分针1秒离散成12度
ans++;
int deg=abs(hh-mm);//h,m角度
if(abs(deg-a)<=)//误差在1度内
break;
}
int anss=(ans+s)%;
int ansm=((ans+s)/+m)%;
int ansh=(((ans+s)/+m)/+h)%;
printf("Case #%d: %02d:%02d:%02d\n",cas++,ansh,ansm,anss);
}
return ;
}
hdu5705的更多相关文章
- HDU-5705
Clock Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) Problem De ...
- 2016女生专场 ABCDEF题解 其他待补...
GHIJ待补... A.HUD5702:Solving Order Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/3276 ...
随机推荐
- Python【第五篇】模块、包、常用模块
一.模块(Module) 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文 ...
- BZOJ4552 HEOI2016/TJOI2016排序(线段树合并+线段树分裂)
很久以前写过二分答案离线的做法,比较好理解.事实上这还是一个线段树合并+分裂的板子题,相比离线做法以更优的复杂度做了更多的事情.具体不说了.怎么交了一遍luogu上就跑第一了啊 #include< ...
- L2-006 树的遍历 (25 分) (根据后序遍历与中序遍历建二叉树)
题目链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805069361299456 L2-006 树的遍历 (25 分 ...
- BZOJ 3613: [Heoi2014]南园满地堆轻絮(二分)
题面: https://www.lydsy.com/JudgeOnline/problem.php?id=3613 题解: 考虑前面的数越小答案越优秀,于是我们二分答案,判断时让前面的数达到所能达到的 ...
- 如何确定Kafka的分区数、key和consumer线程数
[原创]如何确定Kafka的分区数.key和consumer线程数 在Kafak中国社区的qq群中,这个问题被提及的比例是相当高的,这也是Kafka用户最常碰到的问题之一.本文结合Kafka源码试 ...
- 关于QQ农场牧场等曾经流行的游戏的一些见解
大概在上上周,我偶然间打开QQ空间玩了一会QQ农牧场,玩完之后我在想,在那个年代他们为什么那么红? 我觉得可能有以下几点: 1:凭借着QQ海量的用户,可以迅速推广 2:迎合了人们爱占小便宜的心理,不过 ...
- CSS 水平垂直居中的几种实现方法
前言 项目中经常碰到需要实现水平垂直居中的样式.下面就总结几种常用的方法 水平对齐+行高 [思路一]text-align + line-height实现单行文本水平垂直居中 <style> ...
- div的默认position值是静态的static
div的默认position值是静态的static,如果相对父元素使用Position:absolute的话,需要手动在父元素上添加Position.
- jsonp简介
jsonp主要是利用script的跨域.简单点说就是像img,css,js这样的文件是跨域的,这也就是为什么我们能够利用cdn进行加速的原因.而且像js这样的文件,如果里面是一个自执行的代码,比如: ...
- 第六节,Python的科学计算包——Numpy
1.基本类型(array) import numpy as np a=[1,2,3,4] b=np.array(a) #array([1,2,3.4]) type(b) #<type 'nump ...