hdu5387 Clock
Notice that the answer must be not more 180 and not less than 0
cases
for each case,one line include the time
0≤hh<24,0≤mm<60,0≤ss<60
4
00:00:00
06:00:00
12:54:55
04:40:00
0 0 0
180 180 0
1391/24 1379/24 1/2
100 140 120这是一道简单模拟。但我做了挺长时间,果然模拟题还是非常弱啊。。这里注意尽量不要涉及小数,由于会影响精度。#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
#include<vector>
#include<map>
#include<set>
#include<queue>
#include<stack>
#include<string>
#include<algorithm>
using namespace std;
int c[10][4],e,f;
int gcd(int a, int b){ return a == 0 ? b : gcd(b % a, a); }
void jian(int a,int b,int c,int d){
int i,j,t1,t2,t;
t1=a*d-b*c;
t2=b*d;
t=gcd(t2,t1);
e=t1/t;
f=t2/t;
} int main()
{
int h,m,t,s,n,i,j,T,x2,y2,x3,y3;
char c1,c2;
double b1,b2,b3;
scanf("%d",&T);
while(T--)
{
scanf("%d:%d:%d",&h,&m,&s);
if(h>=12)h-=12;
t=h*3600+m*60+s;
c[1][1]=t;
c[1][2]=120; c[2][1]=m*60+s;
c[2][2]=10; c[3][1]=s*6;
c[3][2]=1; e=f=0;
jian(c[1][1],c[1][2],c[2][1],c[2][2]);
if(e*f>0){
e=f=0;
jian(c[1][1],c[1][2],c[2][1],c[2][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
}
else{
e=f=0;
jian(c[2][1],c[2][2],c[1][1],c[1][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
} e=f=0;
jian(c[1][1],c[1][2],c[3][1],c[3][2]);
if(e*f>0){
e=f=0;
jian(c[1][1],c[1][2],c[3][1],c[3][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
}
else{
e=f=0;
jian(c[3][1],c[3][2],c[1][1],c[1][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
} e=f=0;
jian(c[2][1],c[2][2],c[3][1],c[3][2]);
if(e*f>0){
e=f=0;
jian(c[2][1],c[2][2],c[3][1],c[3][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
}
else{
e=f=0;
jian(c[3][1],c[3][2],c[2][1],c[2][2]);
if(e>f*180)jian(360,1,e,f);
if(f==1)printf("%d ",e);
else printf("%d/%d ",e,f);
}
printf("\n");
}
return 0;
}
hdu5387 Clock的更多相关文章
- [hdu5387 Clock]时钟夹角问题
题意:给一个时刻,求时针.分钟.秒针三者之间的夹角 思路:确定参照点,求出三者的绝对夹角,然后用差来得到它们之间的夹角,钝角情况用360.减去就行了. #include <map> #in ...
- hdu5387(2015多校8)--Clock(模拟)
题目链接:点击打开链接 题目大意:给出一个时间,问在钟表上这个时间的时候.时针和分针的角度,时针和秒针的角度.分针和秒针的角度.假设不是整数以分数的形式输出. 假设依照最小的格来算,那么: 1s对于秒 ...
- 修改Linux系统日期与时间date clock
先设置日期 date -s 20080103 再设置时间 date -s 18:24:30 为了永久生效,需要将修改的时间写入CMOS. 查看CMOS的时间: #clock -r 将当前系统时间写到C ...
- 操作系统页面置换算法(opt,lru,fifo,clock)实现
选择调出页面的算法就称为页面置换算法.好的页面置换算法应有较低的页面更换频率,也就是说,应将以后不会再访问或者以后较长时间内不会再访问的页面先调出. 常见的置换算法有以下四种(以下来自操作系统课本). ...
- Cesium应用篇:3控件(1)Clock
创建 跟Clock相关的主要有Animation控件和Timeline控件,通常两者会放在一起使用. 在Cesium中,Viewer默认开启这两个控件,如果你想要不显示控件,可以在Viewer初始化中 ...
- get back to the slower clock rate that allows it to save more power
http://www.howtogeek.com/177790/why-you-cant-use-cpu-clock-speed-to-compare-computer-performance/ Wh ...
- Clock rate
https://en.wikipedia.org/wiki/Clock_rate The clock rate typically refers to the frequency at which a ...
- clock()、time()、clock_gettime()和gettimeofday()函数的用法和区别【转】
转自:http://www.cnblogs.com/krythur/archive/2013/02/25/2932647.html 转自http://blog.sina.com.cn/s/blog_7 ...
- 最少clock
var elClock = document.getElementById("clock");var getTime = function(){ var _ = ['00','01 ...
随机推荐
- 启动springboot
新建一个springboot项目,idea的做法:一般直接next就行 填写项目使用到的技术,上面的Spring Boot版本建议选择最新的稳定版,主要勾选上Web就可以了,如下图: 新建之后< ...
- hbase启动报错:Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
输入HBASE_MASTER_OPTS只是为了快速寻找这个选项而已,如果你手工找也可以 刚才那个命令回车后直接跳到这 前面加#就好了 修改后保存.重新启动hbase就好了. 注意:各个节点都要修改哦. ...
- Microsoft office2016(专业增强版) 安装错误,报CRT(KB2999226)
对着这个错误的出现,网上有解释,这里不多说(实际是我没有找到比较靠谱的说法..),跟Window Update这个服务有关. 首先打开”Windows人为管理器”->"服务" ...
- Hexo 添加自定义的内置标签
灵感 想设计一个记录自已骑行的页面,显示时间.地点.路线图等信息.方便以后做一些留念.定位想实现下面类似的效果.参考:<特效> 实现方案也比较简单,反键查看源码.直接Copy,在 ...
- java之JMX
java之JMX 有关JMX的定义和架构就不具体解释了.见百度百科: http://baike.baidu.com/link? url=6QzGGEqphTmpft3ll5mXmDNVRdvLRZhk ...
- 排序(1)---------选择排序(C语言实现)
选择排序的基本思想: 选择排序(Selection sort)是一种简单直观的排序算法. 它的工作原理例如以下.首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素 ...
- RvmTranslator6.0 - Dassault Systemes 3DXML
RvmTranslator6.0 - Dassault Systemes 3DXML eryar@163.com 1. Introduction RvmTranslator can translate ...
- python-excel操作之xlrd
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++操作excel文件+++++++++++++++++ ...
- 通过Debug-->Attach to Process的方式来调试网站
找到网站所对应的应用程序池
- 11.Axis客户端接收不同参数类型
转自:http://www.guance.com/708.html axis只支持简单类型的返回值.在这里逐一介绍axis的各种返回值接受. 1. axis接受基本类型,如int, string等 引 ...