题目链接:点击打开链接

题目大意:给出一个时间,问在钟表上这个时间的时候。时针和分针的角度,时针和秒针的角度。分针和秒针的角度。假设不是整数以分数的形式输出。

假设依照最小的格来算,那么:

1s对于秒针来说走1格,分针走12/720格。时针走1/720格。

1m对于分针来说走一个,时针走60/720格。

1h对于时针来说走5格。

计算给出的时间中时针,分针。秒针走的格数,相减得到差,每一格代表6度。

注意

1、整数的情况,当中有0,180和其他情况

2、取余

3、输出的角度0 <= j <= 180,所以要注意选小的角。

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std ;
struct time{
int x , y ;
}h , m , s , temp ;
int gcd(int a,int b) {
return b == 0 ? a : gcd(b,a%b) ;
}
void f(time temp) {
if( temp.x%temp.y == 0 ) {
temp.x /= temp.y ;
temp.x %= 360 ;
if( temp.x%360 == 0 )
printf("0 ") ;
else if( temp.x%180 == 0 )
printf("180 ") ;
else
printf("%d ", min(temp.x,360-temp.x) ) ;
}
else{
temp.x %= (360*120) ;
temp.x = min(temp.x,360*120-temp.x) ;
int k = gcd(temp.x,temp.y) ;
printf("%d/%d ", temp.x/k, temp.y/k) ;
}
}
int main() {
int t , a , b , c ;
scanf("%d", &t) ;
while( t-- ) {
scanf("%d:%d:%d", &a, &b, &c) ;
h.x = 3600*a + 60*b + c ;
m.x = 720*b + 12*c ;
s.x = 720*c ;
temp.x = abs(h.x-m.x) ;
temp.y = 120 ;
f(temp) ;
temp.x = abs(h.x-s.x) ;
f(temp) ;
temp.x = abs(m.x-s.x) ;
f(temp) ;
printf("\n") ;
}
return 0 ;
}

hdu5387(2015多校8)--Clock(模拟)的更多相关文章

  1. hdu 5288||2015多校联合第一场1001题

    pid=5288">http://acm.hdu.edu.cn/showproblem.php?pid=5288 Problem Description OO has got a ar ...

  2. hdu5379||2015多校联合第7场1011 树形统计

    pid=5379">http://acm.hdu.edu.cn/showproblem.php? pid=5379 Problem Description Little sun is ...

  3. 2015 多校联赛 ——HDU5319(模拟)

    Painter Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Su ...

  4. 【简单dp+模拟】hdu-5375(2015多校#7-1007)

    给你一个二进制数,,每一位有一个权值,让你转格雷码,求所对应格雷码位为1的权值的和:二进制位中的某些位为?,你需要给这些问号赋值使得到的和最大. 首先你得知道二进制转格雷码的规则,即格雷码位为[二进制 ...

  5. hdu 5289 Assignment(2015多校第一场第2题)RMQ+二分(或者multiset模拟过程)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5289 题意:给你n个数和k,求有多少的区间使得区间内部任意两个数的差值小于k,输出符合要求的区间个数 ...

  6. HDU 5373(2015多校7)-The shortest problem(模拟%11)

    题目地址:pid=5373">HDU 5373 题意:给你一个数n和操作次数t,每次操作将n的各位数之和求出来放在n的末尾形成新的n,问t次操作后得到的n能否够被11整除. 思路:就是 ...

  7. 2015 多校联赛 ——HDU5402(模拟)

    For each test case, in the first line, you should print the maximum sum. In the next line you should ...

  8. 2015 多校联赛 ——HDU5373(模拟)

    Problem Description In this problem, we should solve an interesting game. At first, we have an integ ...

  9. hdu 5308 (2015多校第二场第9题)脑洞模拟题,无语

    题目链接:http://acm.hdu.edu.cn/listproblem.php?vol=44 题意:给你n个n,如果能在n-1次运算之后(加减乘除)结果为24的输出n-1次运算的过程,如果不能输 ...

随机推荐

  1. linux工作笔记

    1. Linux基础 1.1. Unix 1965年,AT&T贝尔电话实验室.通用电气公司.麻省理工学院MAC课题组一起联合开发一个称为Multics的新操作系统.该项目目的是让大型主机可以同 ...

  2. SG函数 与 ICG问题

    ICG ICG(Impartial Combinatorial Games)游戏是组合游戏(Combinatorial Games)的一类 满足如下性质: ①有两名玩家 ②两名玩家轮流操作,在一个有限 ...

  3. matlab 中的删除文件

    Matlab中有两种删除文件的方式: 一种是删除文件     delete()函数      //可以使用help  delete命令查询delete()函数的使用方法 delete('p1.jpg' ...

  4. IE8,11的iframe高度自适应

    兼容模式:function iFrameHeightTzinfo() { var ifm= document.getElementById("iframe_tzinfo"); // ...

  5. SPOJ CIRU The area of the union of circles

    You are given N circles and expected to calculate the area of the union of the circles ! Input The f ...

  6. web实时长图实践--摘抄

    背景简介 全民K歌专辑发布新玩法,传统宣传专辑战绩的流程,从获取数据,到制作海报,到传播,周期长运营成本高,如何快速分享战绩进行荣誉感的传播成为一个亟待解决的问题. 产品:能不能在专辑大事件触发时,自 ...

  7. 标准C程序设计七---42

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  8. 在 POSIX 线程编程中避免内存泄漏

    检测和避免 POSIX 线程内存泄漏的技巧 POSIX 线程(pthread)编程定义了一套标准的 C 编程语言类型.函数和常量 — 且 pthreads 提供了一种强大的线程管理工具.要充分使用 p ...

  9. Charger Warning Message

    使用 PMIC_RGS_VCDT_HV_DET 判斷 charger 是否有 ovp. LV_VTH : 4.15V

  10. Servlet 2.4 规范之第六篇:响应

    响应对象封装了服务端返回给客户端的所有信息.在HTTP协议中,这些信息通过HTTP头和消息体传送. SRV.5.1    缓冲 出于效率考量,servlet容器可以缓冲输出数据,但这并非强制要求.常见 ...