题目链接:点击打开链接

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

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

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. 【bzoj3291】Alice与能源计划 模拟费用流+二分图最大匹配

    题目描述 在梦境中,Alice来到了火星.不知为何,转眼间Alice被任命为火星能源部长,并立刻面临着一个严峻的考验. 为了方便,我们可以将火星抽象成平面,并建立平面直角坐标系.火星上一共有N个居民点 ...

  2. 【bzoj1907】树的路径覆盖 树形dp

    题目描述 输入 输出 样例输入 1 7 1 2 2 3 2 4 4 6 5 6 6 7 样例输出 3 题解 树形dp 设f[x]表示以x为根的子树完成路径覆盖,且x为某条路径的一端(可以向上延伸)的最 ...

  3. 【Luogu】P4357K远点对(寄蒜几盒)

    题目链接 考虑旋转卡壳求出一个最远点对之后删掉其中一个点,把该点到其余所有点的距离存进堆里…… 最后堆输出答案. 我的代码只有在开O2的情况下才不会re.为啥???? #include<cstd ...

  4. Element 'plugin' cannot have character [children], because the type's content type is element-only

    原因是你复制的时候,带了一些特殊符号. 解决方案: 将那一串代码复制到notpad++ 或者文本上面,再复制到你的编译器里面,就可以解决问题了

  5. css3实现连续不断的波浪

    给的波浪要比容器大,然后在左边准备一个相同的,注意,波浪头尾要能衔接起来,接着运动的长度为波浪的宽度,然后不断重复就好了

  6. hust 1605 - Gene recombination(bfs+字典树)

    1605 - Gene recombination Time Limit: 2s Memory Limit: 64MB Submissions: 264 Solved: 46 DESCRIPTION ...

  7. 【CF314C】Sereja and Subsequences(DP,树状数组)

    题意:给定一个N个数的数列,求所有不同不下降子序列的乘积之和,其中不同指的是组成它的数字和长度不完全相同 n (1 ≤ n ≤ 10^5) a[i]<=10^6 思路:考虑DP.设DP[a[i] ...

  8. J2ME开发基本语法及小实例专题

    原文发布时间为:2008-07-31 -- 来源于本人的百度文章 [由搬家工具导入] http://www.wcplym.com/sbjtClassArtl.asp?id=4 ·Canva专题:漂亮的 ...

  9. Opus 和 AAC 声音编码格式

    Opus编码器 是一个有损声音编码的格式,由互联网工程任务组(IETF)近来开发,适用于网络上的实时声音传输,标准格式为RFC 6716.Opus 格式是一个开放格式,使用上没有任何专利或限制. Op ...

  10. C语言集锦(一) C代码生成图片:BMP、PNG和JPEG

    1.生成BMP图片 在学习图形图像的过程中,最简单和常见的格式是BMP和PPM.下面将给出生成BMP的极度精简代码,然后讲解BMP格式. #include <stdio.h> #inclu ...