網名館

QQ餐廳效率的算法攻略 什麼是滿效率?

口號:犍為寶貝出品,必屬精品
  本文閲讀難度較大,對絕大數人都不適用。但我敢保證,你搜遍百度、谷歌也休想找到類似對餐廳效率算法的解析,對對此問題感興趣的朋友來説,絕對是難得的參考。足可以以此發表一篇學術論文。本想認真寫好這篇文章,讓更多的人理解這個理論,但又覺得“一切都是浮雲”。寫好了,又有什麼意義呢?又有幾個人會認真去看,又有幾個人能看懂呢?
  本文旨在闡述QQ餐廳遊戲畫面中的那個小時鐘的算法,讓你知道如何才能達到高效率。絕大數人會説,“這還不簡單,隨便怎麼擺,只要把網上那張表拿過來看,顯示的蹭飯時間達到滿效率所對應的時間不就可以了嗎?”沒有錯。但是如果你只是停留在這個層面,那麼你不適合於繼續讀下去。不解釋。
  好了,開始。
  餐廳的速度共受4個速度上限的限制,分別為:
    顧客流量上限
    廚師的做菜速度上限
    服務員的服務速度上限
    桌椅擺放的速度上限
  取這4個速度上限中最小的那個作為整個餐廳的主菜銷售速度。換句話説:不論何種情況,主菜的售出速度必然是上面四個速度上限中的其中之一
  對於顧客流量上限,似乎不需要多説,它僅僅由玩家的等級決定。這個大家都懂的,正是網上那張表上的數據。比如30級的顧客流量上限為:870人/小時,25級是804。其中1個人最多隻吃1份主菜。
  廚師的做菜速度上限,僅受廚師數量影響。1個廚師的做菜速度是450份/小時,2個廚師的做菜速度是900份/小時。可見現今所有等級(34級以下)均最多用2個廚師即可。
  服務員的服務速度上限同時受服務員數量、廚房到桌椅的距離影響。
  桌椅擺放速度上限同時受桌椅數量、廚房到餐桌的距離、門到餐椅的距離三方面因素共同影響。
  首先必須掌握服務員端菜位置的概念。服務員端菜時總是站在靠近櫥櫃的第一行從左數起的第3到第8個位置。舉例,假如第一行第2、4、5三個位置擺有桌椅或裝飾,那麼服務就只能站在第3、6、7、8這四個位置。第1、2以及第9以後的所有位置服務員都是不能在那端菜的。
  廚房到餐桌的距離是指:從服務員端菜位置到最遠的餐桌所經歷的格子數。由於服務員可能有多個端菜位置、餐桌也有多個,所以具體的算法比較難以講解。假設有A、B、C三張餐桌,有X、Y、Z三個服務員端菜位置。首先選定一張餐廳,比如A,嘗試找出從服務員端菜位置最左邊的那個(X)到A的最短路徑,如果X不能到達A,再嘗試找出接下來可能端菜位置(Y)到A的最短路徑。直到第一次找到能夠到達A的最短路徑。找到這個路徑後,數出它所經過的格子數,即為餐廳A到廚房的距離。同樣的方法,再計算B到廚房的距離,C到廚房的距離。A、B、C的三個距離中最大的那個即為“廚房到餐桌的距離”。
  門到餐椅的距離是指:從大門到最遠的餐椅的距離。大門只有一個,餐椅可能有多個。與上面的計算相似,找出所有餐椅到大門路徑經歷格子數中最大的那個,即為門到餐廳的距離。
  三種速度上限的計算公式如下,單位是“份/小時”。

 

推薦:qq餐廳13級最佳擺法      QQ餐廳攻略(QQ餐廳外掛)

 



廚師的做菜速度上限 = 450 * 廚師數量

服務員的服務速度上限 =  9000 / (7 * 廚房到餐桌的距離 + 5) * 服務員數量

桌椅擺放速度上限 = 36000 / ( 21 *廚房到餐桌的距離 + 7 * 門到餐椅的距離 + 250 ) * 桌椅總數

 

  舉個簡單的例子,隱身卡位擺法,2廚2服。此時,所有服務員到餐桌的最大距離是2格,套用公式:服務員的服務速度上限 = 9000 / ( 7 * 2 + 5) * 2 = 947 份/小時。
  有了這一理論,我們可以解釋幾乎所有有關裝修、桌椅擺放、廚師服務員的問題。比如為什麼隱身傳菜法是最有效率的擺法;比如為什麼擴建可能會使同樣的擺法效率降低;比如為什麼廚師最多隻需要僱傭1個;比如為什麼到了一定級別就必須至少要用14張桌椅;比如……
  還有些細節也沒有完全描述,否則將會變得更為晦澀難懂。比如“廚房到餐桌的距離”在某些特殊情況下(主要是指不可達)會轉為計算廚房到餐椅的距離。這是解釋背靠背擺法的基礎。再比如服務器與客户端在判斷有效桌椅時有較大的不同。太多了,無法一一列舉。

  第一次到Q吧發帖回帖就是在餐廳吧,大概是7月初,算算已經整整了4個月了。在這裏,認識了不少朋友,學到了不少東西,也一步步成長,慢慢“無所不知”,開始習慣於回覆別人的問題。最後,就變得有些厭倦了,以一句“不輕易發表評論”搪塞了無數新手的提問。我想改變這種生活方式,以後來Q吧就少了,不會再經常看到我的身影。本文算是近期給大家最後的“作品”。

 

為了更好地理解距離的算法,下面再用一個圖來説明。紅色數字表示門到餐的距離(15格),藍色數字表示廚房到餐的距離(4格)。紅色的數字應該較易理解,是從門到最遠的那張餐所經歷的格子數。

廚房到餐廳的距離就沒那麼容易,關鍵是要確定服務員的端菜位置。服務員只能站在第一排的第3到第8個位置。請認真查看圖中我用黃色橢圓標註的地方,那是其中一個廚師的上菜位,總共有6個(第3到第8)。服務員只能站在這幾個位置前等候。由於這幾個位置已經被第一排的桌椅佔住了一部分,所以服務務能端菜的位置只有從左數起的第4、7、8三個位置了。按(從左到右的)順序,首先嚐試從第4個位置(剛好在圖中藍色數字“1”的位置)走遍所有的餐桌,發現均能走通,最遠的餐桌,格子數為4格。這表示廚房到餐的距離是4格。


 

QQ餐廳效率的算法攻略 什麼是滿效率?
 

 

運用公式:桌椅擺放速度上限 = 36000 / ( 21 *廚房到餐桌的距離 + 7 * 門到餐椅的距離 + 250 ) * 桌椅總數

即 桌椅擺放速度上限 = 36000 / (21 * 4 + 7 * 15 + 250 )  * 6 = 492.0 份/小時。同樣的道理,我們再計算其他的速度上限。服務員服務速度上限  = 9000 / ( 7 * 4 + 5) * 2 = 545 份/小時,廚師做菜速度 = 450 * 2 = 900份/小時。(廚師和服務員數量均為2。)在加上一個大家最為熟知的該等級客流量上限738(所謂的“滿效率”)。在這四個速度中,選擇最小的那個,即492.0份/小時,即為整個餐廳的賣菜速度。

下面用下圖來驗證,(3074 + 3074)/12.5 = 491.9 份/小時,(在誤差允許範圍內)與理論計算完全相符。


QQ餐廳效率的算法攻略 什麼是滿效率? 第2張


  應部分朋友要求,列出了各等級為達到滿效率所必需的最大距離。此“距離”僅指廚房到餐桌的距離,而不包括門到餐廳的距離。因為後者顯得沒有那麼重要(證明略)。總是假設僱傭滿了所有僱員,而且廚師只有2個(廚師為何只要2個,見正文)

 

15至16級,不超過12格

17級,不超過10格

18至20級,不超過12格

21至26級,不超過13格

27至50級,不超過14格

 

下面再給出一個複雜一點的滿效率擺法。


QQ餐廳效率的算法攻略 什麼是滿效率? 第3張

紅色路徑是幾條較為典型的長路徑,此路徑為廚房到餐桌的路徑。藍色數字給出了幾個有代表性的格子數。可以看出,最遠的距離是14格,根據上表中的結論,容易做到滿效率。

有人或許要問為什麼服務員端菜位置是魚缸旁邊那個位置,而不是最左下角的那兩個之一呢?看了正文就知道,服務員只可能站在第3到第8個位置端菜。

標籤: