SDUT2087離散事件模擬 銀行管理

2021-07-11 21:46:03 字數 928 閱讀 3328

time limit: 1000ms   memory limit: 65536k  有疑問?點這裡^_^

現在銀行已經很普遍,每個人總會去銀行辦理業務,乙個好的銀行是要考慮 平均逗留時間的,即: 在一定時間段內所有辦理業務的人員逗留的時間的和/ 總的人數。逗留時間定義為 人員離開的時間減去人員來的時間。銀行只有考慮了這一點,我們在辦理業務的時候,才不會等太多的時間。

為了簡化問題,我們認為銀行只有一號視窗和二號視窗可以辦理業務 ,並且在時間範圍是12<=time<=18,即從中午十二點到晚上十八點,輸入資料採用分鐘即0代表中午12點,60代表下午一點,90代表下午一點半… 這樣time>=0&&time<=360, 如果超出這個時間段概不接受,在這個時間段的一律接受。每個人到達的時間都不一樣。顧客到達的時候,總是前往人數少的那個視窗。如果辦業務的兩個人進入離去發生在同一時間,則遵從先離去後進入。如果人數相當或者兩個視窗都沒有人總是前往1號視窗。請計算平均逗留時間=總逗留的分鐘數/總的人數。

第一行乙個整數t(0對於每一組輸入乙個整數n(00&&y<=15)。資料保證按顧客來的先後順序輸入。

對於每組資料輸出平均逗留時間,保留兩位小數。

1

160 10

10.00

該題就是乙個佇列模擬問題;控制好出隊入隊,以及臨界情況;

**如下:

#include //極其強大的標頭檔案

using namespace std;

int main()

else

q1.push(time_1);

}else//情況反之,但是規則一樣

else

q2.push(time_2);}}

printf("%.2lf\n",1.0*sum/n);

}return 0;

}

SDUT 2087 離散事件模擬 銀行管理

離散事件模擬 銀行管理time limit 1000ms memory limit 65536k 有疑問?點這裡 題目描述 現在銀行已經很普遍,每個人總會去銀行辦理業務,乙個好的銀行是要考慮 平均逗留時間的,即 在一定時間段內所有辦理業務的人員逗留的時間的和 總的人數。逗留時間定義為 人員離開的時間...

離散事件模擬

被模擬系統的行為 適用於這種模擬的系統,其行為特徵是 模擬中的事件經常需要排隊,佇列結構適用於記錄事件 很多情況下還涉及到時間或其他排序因素,優先佇列結構可能提供所需要的功能 做這種模擬,其中的基本想法就是按事件發生的時間順序處理 在模擬系統裡用乙個優先佇列儲存已知在將來某些特定時刻 時刻也不太能確...

離散事件模擬 銀行排隊

某銀行有四個視窗接待客戶,每個視窗在某個時刻只能接待乙個客戶,人數多時則需要進行排隊,剛進來的客戶,視窗無人則進行業務辦理,有人則排隊,排在人數最少的隊伍後面。問題 計算在銀行關閉之前,計算客戶在銀行逗留的平均時間 用c寫的,給書上 的實現了下,如下 include include include ...