zoukankan      html  css  js  c++  java
  • [刷题]

    要求

    • 给定被测函数前后两次获得的时钟打点数,给出被测函数运行的时间

    样例

    • 输入样例: 123 4577973
    • 输出样例: 12:42:59

    思路

    • n表示运行的时间,n为(b-a)/100,因为常数CLK_TCK为100
    • 题目要求不足1秒的时间四舍五入到秒,所以先给(b-a)加上50,这样如果(b-a)/100的小数位大于等于0.5则会进位,小于等于0.5则会舍去,所以n = ((b – a) + 50) / 100
    • 因为要把秒数n化为时:分:秒的格式,一小时等于3600秒,所以hour = n / 3600,此时将n % 3600即为剩下的分钟和秒数;因为一分钟等于60秒,所以minute = n / 60,则n % 60剩下的就是秒
    • 最后用printf的%02d格式自动为不足2位的整数在前面补上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;
    }
    

      

  • 相关阅读:
    分布式文件系统-glusterfs
    Centos7防火墙使用
    Centos7使用Python3
    ldap认证服务的搭建
    kafka使用
    Python基本数据类型
    Linux 内核参数优化
    MHA+atlas(数据库的高可用与读写分离)
    插槽(slot)
    常用组件通信方式
  • 原文地址:https://www.cnblogs.com/cxc1357/p/13857245.html
Copyright © 2011-2022 走看看