地址:https://leetcode-cn.com/problems/qi-wang-ge-shu-tong-ji/
<?php /** 某互聯網公司一年一度的春招開始了,一共有 n 名面試者入選。每名面試者都會提交一份簡歷,公司會根據提供的簡歷資料產生一個預估的能力值,數值越大代表越有可能通過面試。 小 A 和小 B 負責審覈面試者,他們均有所有面試者的簡歷,並且將各自根據面試者能力值從大到小的順序瀏覽。由於簡歷事先被打亂過,能力值相同的簡歷的出現順序是從它們的全排列中等可能地取一個。現在給定 n 名面試者的能力值 scores,設 X 代表小 A 和小 B 的瀏覽順序中出現在同一位置的簡歷數,求 X 的期望。 提示:離散的非負隨機變量的期望計算公式爲 。在本題中,由於 X 的取值爲 0 到 n 之間,期望計算公式可以是 。 示例 1: 輸入:scores = [1,2,3] 輸出:3 解釋:由於面試者能力值互不相同,小 A 和小 B 的瀏覽順序一定是相同的。X的期望是 3 。 示例 2: 輸入:scores = [1,1] 輸出:1 解釋:設兩位面試者的編號爲 0, 1。由於他們的能力值都是 1,小 A 和小 B 的瀏覽順序都爲從全排列 [[0,1],[1,0]] 中等可能地取一個。如果小 A 和小 B 的瀏覽順序都是 [0,1] 或者 [1,0] ,那麼出現在同一位置的簡歷數爲 2 ,否則是 0 。所以 X 的期望是 (2+0+2+0) * 1/4 = 1 示例 3: 輸入:scores = [1,1,2] 輸出:2 限制: 1 <= scores.length <= 10^5 0 <= scores[i] <= 10^6 來源:力扣(LeetCode) 鏈接:https://leetcode-cn.com/problems/qi-wang-ge-shu-tong-ji 著作權歸領釦網絡所有。商業轉載請聯繫官方授權,非商業轉載請註明出處。 */ class Solution { /** * @param Integer[] $scores * @return Integer */ function expectNumber($scores) { return count(array_unique($scores)); } }