PAT——1026. 程序運行時間
阿新 • • 發佈:2017-12-05
http 輸出 runt 運行 c語言 printf cti pri pat
要獲得一個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
1 package com.hone.basical; 2 3 import java.util.Scanner; 4 5 /** 6 * 原題目:https://www.patest.cn/contests/pat-b-practise/10257 * @author Xia 8 * 核心:數據的處理(取余,取商) 9 */ 10 public class basicalLevel1026ProRuntimeimprove{ 11 public static void main(String[] args) { 12 Scanner s = new Scanner(System.in); 13 double b = s.nextInt(); 14 double e = s.nextInt(); 15 int second = (int) Math.round((e-b)/100);16 int hour = second/3600; 17 int minute = second%3600/60; 18 int second2 = second%60; 19 //格式化輸出 20 System.out.printf("%02d:%02d:%02d\n", hour, minute, second2); 21 } 22 }
PAT——1026. 程序運行時間