[PAT乙级]1026. 程序运行时间(15)
来源:互联网 发布:中国航空母舰知乎 编辑:程序博客网 时间:2024/06/08 19:45
1026. 程序运行时间(15)
原题链接
相似题目:1037. 在霍格沃茨找零钱(20)
要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick,即“时钟打点”。同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数f的运行时间,我们只要在调用f之前先调用clock(),获得一个时钟打点数C1;在f执行完成后再调用clock(),获得另一个时钟打点数C2;两次获得的时钟打点数之差(C2-C1)就是f运行所消耗的时钟打点数,再除以常数CLK_TCK,就得到了以秒为单位的运行时间。
这里不妨简单假设常数CLK_TCK为100。现给定被测函数前后两次获得的时钟打点数,请你给出被测函数运行的时间。
输入格式:
输入在一行中顺序给出2个整数C1和C2。注意两次获得的时钟打点数肯定不相同,即C1 < C2,并且取值在[0, 107]。
输出格式:
在一行中输出被测函数运行的时间。运行时间必须按照“hh:mm:ss”(即2位的“时:分:秒”)格式输出;不足1秒的时间四舍五入到秒。
输入样例:123 4577973输出样例:12:42:59
代码:
#include <iostream>#include <cstdio>using namespace std;int main(){ int c1, c2; scanf("%d%d", &c1, &c2); int temp = (c2-c1)%100; int s = temp>=50 ? (c2-c1)/100+1 : (c2-c1)/100; int hh,mm,ss; ss = s%60; mm = (s%3600)/60; hh = s/3600; printf("%02d:%02d:%02d", hh, mm, ss); return 0;}
- 看到一个四舍五入很巧妙的方法,点击链接
#include <iostream>using namespace std;int main() { int a, b; cin >> a >> b; int n = ((b - a) + 50) / 100; int hour = n / 3600; n = n % 3600; int minute = n / 60, second = n % 60; printf("%02d:%02d:%02d", hour, minute, second); return 0;}
阅读全文
0 0
- 1026. 程序运行时间(15) PAT 乙级
- PAT-乙级-1026. 程序运行时间(15)
- PAT乙级.1026. 程序运行时间(15)
- PAT 乙级 1026. 程序运行时间(15)
- PAT乙级 1026. 程序运行时间(15)
- PAT乙级1026. 程序运行时间(15)
- [PAT乙级]1026. 程序运行时间(15)
- pat 乙级 1026. 程序运行时间(15)
- PAT乙级1026. 程序运行时间(15)
- PAT 乙级 1026. 程序运行时间
- PAT(乙级)1026. 程序运行时间
- [PAT-乙级]1026.程序运行时间
- PAT乙级题1026.程序运行时间
- PAT乙级 程序运行时间(15)
- PAT乙级—1026. 程序运行时间(15)-native
- 1026. 程序运行时间(15)-PAT乙级真题
- PAT 乙级 1026. 程序运行时间(15) Java版
- PAT 乙级 1026.程序运行时间(15)
- 线程等待,退出
- 集合框架——泛型
- 3、JVM运行时数据区
- Unity图片浏览插件——Uniflow源码解析ZZ
- 【DP+组合数学】Codeforces559C[Gerald and Giant Chess]题解
- [PAT乙级]1026. 程序运行时间(15)
- module_init
- CSS初始化代码
- 生物信息脚本练习(1) 找出fasta文件中大于500的序列
- 4.JVM机器指令集
- 《微服务设计》 读书笔记
- HDOJ1098
- leetcode 415. Add Strings
- 【牛腩新闻发布系统】总结篇