hdu5387(2015多校8)--Clock(模拟)
题目链接:点击打开链接
题目大意:给出一个时间,问在钟表上这个时间的时候。时针和分针的角度,时针和秒针的角度。分针和秒针的角度。假设不是整数以分数的形式输出。
假设依照最小的格来算,那么:
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(模拟)的更多相关文章
- hdu 5288||2015多校联合第一场1001题
pid=5288">http://acm.hdu.edu.cn/showproblem.php?pid=5288 Problem Description OO has got a ar ...
- hdu5379||2015多校联合第7场1011 树形统计
pid=5379">http://acm.hdu.edu.cn/showproblem.php? pid=5379 Problem Description Little sun is ...
- 2015 多校联赛 ——HDU5319(模拟)
Painter Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Su ...
- 【简单dp+模拟】hdu-5375(2015多校#7-1007)
给你一个二进制数,,每一位有一个权值,让你转格雷码,求所对应格雷码位为1的权值的和:二进制位中的某些位为?,你需要给这些问号赋值使得到的和最大. 首先你得知道二进制转格雷码的规则,即格雷码位为[二进制 ...
- hdu 5289 Assignment(2015多校第一场第2题)RMQ+二分(或者multiset模拟过程)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5289 题意:给你n个数和k,求有多少的区间使得区间内部任意两个数的差值小于k,输出符合要求的区间个数 ...
- HDU 5373(2015多校7)-The shortest problem(模拟%11)
题目地址:pid=5373">HDU 5373 题意:给你一个数n和操作次数t,每次操作将n的各位数之和求出来放在n的末尾形成新的n,问t次操作后得到的n能否够被11整除. 思路:就是 ...
- 2015 多校联赛 ——HDU5402(模拟)
For each test case, in the first line, you should print the maximum sum. In the next line you should ...
- 2015 多校联赛 ——HDU5373(模拟)
Problem Description In this problem, we should solve an interesting game. At first, we have an integ ...
- hdu 5308 (2015多校第二场第9题)脑洞模拟题,无语
题目链接:http://acm.hdu.edu.cn/listproblem.php?vol=44 题意:给你n个n,如果能在n-1次运算之后(加减乘除)结果为24的输出n-1次运算的过程,如果不能输 ...
随机推荐
- linux工作笔记
1. Linux基础 1.1. Unix 1965年,AT&T贝尔电话实验室.通用电气公司.麻省理工学院MAC课题组一起联合开发一个称为Multics的新操作系统.该项目目的是让大型主机可以同 ...
- SG函数 与 ICG问题
ICG ICG(Impartial Combinatorial Games)游戏是组合游戏(Combinatorial Games)的一类 满足如下性质: ①有两名玩家 ②两名玩家轮流操作,在一个有限 ...
- matlab 中的删除文件
Matlab中有两种删除文件的方式: 一种是删除文件 delete()函数 //可以使用help delete命令查询delete()函数的使用方法 delete('p1.jpg' ...
- IE8,11的iframe高度自适应
兼容模式:function iFrameHeightTzinfo() { var ifm= document.getElementById("iframe_tzinfo"); // ...
- 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 ...
- web实时长图实践--摘抄
背景简介 全民K歌专辑发布新玩法,传统宣传专辑战绩的流程,从获取数据,到制作海报,到传播,周期长运营成本高,如何快速分享战绩进行荣誉感的传播成为一个亟待解决的问题. 产品:能不能在专辑大事件触发时,自 ...
- 标准C程序设计七---42
Linux应用 编程深入 语言编程 标准C程序设计七---经典C11程序设计 以下内容为阅读: <标准C程序设计>(第7版) 作者 ...
- 在 POSIX 线程编程中避免内存泄漏
检测和避免 POSIX 线程内存泄漏的技巧 POSIX 线程(pthread)编程定义了一套标准的 C 编程语言类型.函数和常量 — 且 pthreads 提供了一种强大的线程管理工具.要充分使用 p ...
- Charger Warning Message
使用 PMIC_RGS_VCDT_HV_DET 判斷 charger 是否有 ovp. LV_VTH : 4.15V
- Servlet 2.4 规范之第六篇:响应
响应对象封装了服务端返回给客户端的所有信息.在HTTP协议中,这些信息通过HTTP头和消息体传送. SRV.5.1 缓冲 出于效率考量,servlet容器可以缓冲输出数据,但这并非强制要求.常见 ...