1. 程式人生 > >程式執行時間(15) 時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)

程式執行時間(15) 時間限制 1000 ms 記憶體限制 32768 KB 程式碼長度限制 100 KB 判斷程式 Standard (來自 小小)

題目描述

要獲得一個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和C1。注意兩次獲得的時鐘打點數肯定不相同,即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,hour,mintue,scend; float time; const int CLK_TCK=100; cin>>c1>>c2; time=((c2-c1)/CLK_TCK); hour=(int)(time+0.5)/3600; mintue=(int)(time+0.5)%3600/60; scend=(int)(time+0.5)%3600%60; printf("%02d:%02d:%02d",hour,mintue,scend); return 0; }