ZOJ 1122 Clock
来源:互联网 发布:数控加工工艺编程实例 编辑:程序博客网 时间:2024/06/06 09:31
题目大意:
现要求计算一段时间内分针划过时针的次数。
每行输入一个起始时间和终止时间(比如3 40 7 33,就表示起始时间是3:40,终止时间是7:33),输入的行数不确定,其中给定的时间不会有刚好分针时针重合的情况(比如12 00这样的数据就不会给),从开始到结束时针不会旋转超过360度,但不过从开始到结束时针可能会经过12点,这种情况下可以理解为起始是上午结束时下午,或者起始是晚上结束时早上,总之时间超不超过12个小时,对于每一行输入都要计算这段时间内时针扫过分针多少次,注释输入格式,时间上小时和分钟都占两位,十位没有用0补齐。
题目链接
注释代码:
/* * Problem ID : ZOJ 1122 Clock * Author : Lirx.t.Una * Language : C * Run Time : 0 ms * Run Memory : 168 KB */#include <stdio.h>intmain() {intsh, eh;//starting hour and end hour,起始和结束的小时intsm, em;//starting minute and end minute,起始和结束的分钟//把时间看成一个一维的x轴,00:00为原点,长度单位为1分钟,比如3:33的坐标就是3 × 60 + 33//注意,为了闭包,12:00表示坐标0,因此12:xx的坐标为xxintsx, ex;//start x and end x axisintps;//passing times,分针扫过时针的次数printf("Program 3 by team X\n");printf("Initial time Final time Passes\n");while ( ~scanf("%d%d%d%d", &sh, &sm, &eh, &em) ) {//计算起始和终止的坐标sx = ( sh % 12 ) * 60 + sm;ex = ( eh % 12 ) * 60 + em;//计算方法是://时针转整整一周扫过次数刚好为11次,因此可以按比例划分//从原点经过12个小时的坐标刚好是720ps = ex * 11 / 720 - sx * 11 / 720;//!!!注意!!:不能将该式子化简合并,如果合并了答案就变成了从时刻0//到时间点end - start之间的扫过次数了printf(" %02d:%02d", sh, sm);printf(" %02d:%02d", eh, em);printf("%8d\n", sx > ex ? ps + 11 : ps);//如果差值为负数则再补一个周期即可}printf("End of program 3 by team X\n");return 0;}
无注释代码:
#include <stdio.h>intmain() {intsh, eh;intsm, em;intsx, ex;intps;printf("Program 3 by team X\n");printf("Initial time Final time Passes\n");while ( ~scanf("%d%d%d%d", &sh, &sm, &eh, &em) ) {sx = ( sh % 12 ) * 60 + sm;ex = ( eh % 12 ) * 60 + em;ps = ex * 11 / 720 - sx * 11 / 720;printf(" %02d:%02d", sh, sm);printf(" %02d:%02d", eh, em);printf("%8d\n", sx > ex ? ps + 11 : ps);}printf("End of program 3 by team X\n");return 0;}
单词解释:
analog:adj, 模拟的,有长短针的
instant:adj, 立即的,紧迫的; n, 瞬间,即刻
revolution:n, 旋转,循环,革命
vice versa:反之亦然
dial:n, 转盘,刻度盘,钟面
observe:vt, 注意
colon:n, 冒号
0 0
- ZOJ 1122 Clock
- ZOJ 1122 Clock
- Clock ZOJ 3313
- zoj 3131 Digital Clock
- zoj 1476 Weird Clock
- zoj 3131 Digital Clock
- zoj 3191 Strange Clock
- ZOJ 3191 Strange Clock
- ZOJ 3131 Digital Clock
- ZOJ 2680 Clock(数学)
- clock
- clock
- clock
- Clock
- CLOCK
- clock
- Clock
- clock
- 分享一个最好用的剪切板管理软件
- base64
- excel导出的功能发布到服务器上报错问题,终于解决了!!
- 第九、十周研究报告
- 老板凭啥提拔你:如何得到老板赏识
- ZOJ 1122 Clock
- 使用eclipse调试cocos2d-x C++ 代码(编写+真机调试,放弃VS)
- centos 安装eclipse
- codechef Open the Dragon Scroll bitset容器的运用
- 页面上插入视频播放器时,经常会遇到视频挡住js弹框的问题:
- 推荐几款不错的报表工具
- 关于EditText的inputType属性
- Oracle WebCenter 介绍
- leetcode Best Time to Buy and Sell Stock II