題目1022:遊船出租

來源:互聯網
上載者:User
http://ac.jobdu.com/problem.php?pid=1022

題目描述:
    現有公園遊船租賃處請你編寫一個租船管理系統。當遊客租船時,管理員輸入船號並按下S鍵,系統開始計時;當遊客還船時,管理員輸入船號並按下E鍵,系統結束計時。船號為不超過100的正整數。當管理員將0作為船號輸入時,表示一天租船工作結束,系統應輸出當天的遊客租船次數和平均租船時間。
    注意:由於線路偶爾會有故障,可能出現不完整的紀錄,即只有租船沒有還船,或者只有還船沒有租船的紀錄,系統應能自動忽略這種無效紀錄。
輸入:

    測試輸入包含若干測試案例,每個測試案例為一整天的租船紀錄,格式為:
    船號(1~100) 索引值(S或E) 發生時間(小時:分鐘)
    每一天的紀錄保證按時間遞增的順序給出。當讀到船號為-1時,全部輸入結束,相應的結果不要輸出。

輸出:
    對每個測試案例輸出1行,即當天的遊客租船次數和平均租船時間(以分鐘為單位的精確到個位的整數時間)。
範例輸入:
1 S 08:102 S 08:351 E 10:002 E 13:160 S 17:000 S 17:003 E 08:101 S 08:202 S 09:001 E 09:200 E 17:00-1
範例輸出:
2 1960 01 60

#include <stdio.h>int main(){int index;char type;int end[101];int start[101] = {-1};scanf("%d",&index);int sum = 0;int cnt = 0;int h,m,i;while(index != -1){if(index == 0){for(i=0; i<101; i++)start[i] =-1;if(cnt != 0) //因為要四捨五入。不能直接用int類型輸出printf("%d %.0lf\n",cnt,((double)(sum/(double)cnt)));elseprintf("0 0\n");sum = 0;cnt = 0;}getchar(); //這個地方是為了正常讀取type = getchar();scanf("%d:%d",&h,&m);if(type == 'E'){end[index] = h*60 + m;if(start[index] != -1){  //說明有租船記錄sum += (end[index] - start[index]);cnt ++;}}elsestart[index] = h*60 + m;scanf("%d",&index);}return 0;}

/**************************************************************    Problem: 1022    User: 從此醉    Language: C    Result: Accepted    Time:10 ms    Memory:908 kb****************************************************************/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.