hdoj 5387(Clock)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5387

比较水的一道题目,也是自己单翘的第一道题目吧,题意就是找到给定时间时钟三个指针之间的夹角,

需要注意的问题分数的表示方法,辗转相除求最大公因子,同时除去,

此外还应注意夹角为锐角。

 1 #include<stdio.h>
 2 #include<cmath>
 3 #include<algorithm>
 4 using namespace std;
 5 int gcd(int a,int b)
 6 {
 7     int r;
 8     if(a<b) {r=a;a=b;b=r;}
 9     while(b)
10     {
11         r=a%b;
12         a=b;
13         b=r;
14     }
15     return a;
16 }
17 void per( int &a, int &b){
18     int tmp = gcd(a,b);
19     a = a / tmp;
20     b = b / tmp;
21 }
22 void show( int a, int b, int c, int d){
23     if( a / b > 360 )
24         a = a % ( 360 * b);
25     if( c / d > 360 )
26         c = c % ( 360 * d);
27     int son = 6*abs(a*d-b*c);
28     int mot = b*d;
29     son = son %( b*d*360);
30     if( son > b*d*180 )
31         son = b*d*360 - son;
32     per(son,mot);
33     if( mot != 1 )
34         printf("%d/%d ",son,mot);
35     else
36         printf("%d ",son);
37 }
38 int main(){
39 //    freopen("test.out","r",stdin);
40     int T;
41     char in[10];
42     int hh, mm, ss;
43     int total;
44     int total2;
45     int total3;
46     int hour ;
47     int minu ;
48     int sec ;
49     scanf("%d",&T);
50     while(T--){
51         hour = 720;
52         minu = 60;
53         sec = 1;
54         scanf("%s", in);
55         hh = (in[0]-‘0‘)*10+(in[1]-‘0‘);
56         mm = (in[3]-‘0‘)*10+(in[4]-‘0‘);
57         ss = (in[6]-‘0‘)*10+(in[7]-‘0‘);
58         total = ( ss + mm * 60 + hh * 3600 ) % ( 3600 * 12 );
59         total2 = total;
60         total3 = total;
61         per(total,hour);
62         per(total2,minu);
63         per(total3,sec);
64         show(total,hour,total2,minu);
65         show(total,hour,total3,sec);
66         show(total3,sec,total2,minu);
67         printf("\n");
68     }
69 }
时间: 2024-10-12 06:53:52

hdoj 5387(Clock)的相关文章

hdoj 2602(背包)

Problem D Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other) Total Submission(s) : 9   Accepted Submission(s) : 6 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description Many years ago , in Teddy’s h

hdoj 1087 (DP)

代码: #include<iostream>   #include<cmath>   using namespace std;  int a[1005], dp[1005];  int main()  {      int n,sum,i,j;      while( scanf("%d",&n)&&n){             for( i=0; i<n; i++){                  scanf("%

hdoj分类(转)

注:网上搜的 第一篇 1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最近点对问题,用分治 1008 简单题 1009 贪心 1010 搜索题,剪枝很关键 1011 1012 简单题 1013 简单题(有个小陷阱) 1014 简单题 1015 可以看作搜索题吧 1016 经典的搜索 1017 简单数学题 1018 简单数学题 1019 简单数学题

hdu1209(Clock)

点击打开hdu1209 Problem Description There is an analog clock with two hands: an hour hand and a minute hand. The two hands form an angle. The angle is measured as the smallest angle between the two hands. The angle between the two hands has a measure tha

hdoj 1518(DFS)

#include <iostream> #include <cstdio>#include <cmath>#include <cstring>#include <algorithm>using namespace std;int n, a[25], visit[25], side, flag = 0;bool cmp(int a, int b){ return a > b; }void dfs(int gs, int len, int k)

HDOJ 2072(map)

#include<cstdio> #include<iostream> #include<vector> #include<map> #include<queue> #include<algorithm> #include<deque> #include<cmath> #include<set> #include<cstring> #include<string> using

20145317《信息安全系统设计基础》第六周学习总结(1)

20145317<信息安全系统设计基础>第六周学习总结(1) 第四章 处理器体系结构 指令体系结构:一个处理器支持的指令和指令的字节级编码 4.1Y86指令集体系结构 Y86:包括定义各种状态元素.指令集和它们的编码.一组编程规范和异常事件处理. Y86程序中的每条指令都会读取或修改处理器状态的某些部分.Y86具体包括:8个程序寄存器.3个条件码ZF\SF\OF.程序计数器(PC) Y86用虚拟地址引用存储器位置. 程序状态的最后一个部分是状态码Stat,它表明程序执行的总体状态. 注意:条件

Python初学者(六)

十五.time,datetime,random模块 I. time & datetime 这两个模块可以处理时间和日期: time模块常用的方法有:time(),process_time()(clock()),altzone,asctime(),localtime(),gmtime(),ctime(),strptime(),mktime(),strftime(): datetime模块常用的方法有:datetime.now(),date.fromtimestamp(),timedelta().

(转)操作系统总结

转自:http://my.oschina.net/pangyangyang/blog/188507?p=2#OSC_h3_56 计算机组成 计算机的运行简单理解为这三层:硬件即组成计算机的所有摸得见看得着的东西是计算机运行的基础:应用程序即完成特定功能.目的的用户程序是计算机的价值体现:中间就是操作系统,连接了硬件和应用程序负责硬件调度.资源管理和分配(内存.文件.CPU等等).安全等一系列功能. 硬件层 主要硬件包括CPU(算术.逻辑单元).主存.辅助存储.系统总线.I/O设备(即输入输出).