ホームページ >バックエンド開発 >PHPチュートリアル >平均待ち時間
1701。平均待ち時間
中
シェフが一人いるレストランがあります。配列 Customers が与えられます。ここで、customers[i] = [到着i, 時刻i]:
顧客が到着すると、シェフに注文を出し、シェフは暇になると調理を開始します。顧客はシェフが注文の準備を終えるまで待ちます。シェフは一度に複数のお客様の料理を準備することはありません。シェフは、入力で指定された順序で顧客のために料理を準備します。
すべての顧客の平均待ち時間を返します。実際の回答から 10-5 以内の解決策は受け入れられたとみなされます。
例 1:
したがって、平均待ち時間 = (2 + 6 + 7) / 3 = 5 となります。
例 2:
したがって、平均待ち時間 = (2 + 6 + 4 + 1) / 4 = 3.25 となります。
制約:
解決策:
class Solution { /** * @param Integer[][] $customers * @return Float */ function averageWaitingTime($customers) { $currentTime = 0; $totalWaitingTime = 0; $n = count($customers); foreach ($customers as $customer) { $arrival = $customer[0]; $time = $customer[1]; if ($currentTime < $arrival) { $currentTime = $arrival; } $currentTime += $time; $totalWaitingTime += ($currentTime - $arrival); } return $totalWaitingTime / $n; } }
連絡先リンク
以上が平均待ち時間の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。