牛客程式設計巔峰賽S1第12場

2021-10-09 05:31:51 字數 1883 閱讀 2901

題目描述

給你乙個含有n個元素的陣列arr[i],請你告訴牛牛這個陣列的中位數大還是平均數大,如果中位數更大輸出1,如果平均數更大輸出-1,如果中位數和平均數相等輸出0

示例1輸入

[1,3,4]

輸出說明:

中位數3,平均數約等於2.67,所以輸出1

示例2輸入

[7,4,8,11]

輸出說明

中位數7.5,平均數7.5,所以輸出0

示例3輸入

[6,6,6,6,5,8]

輸出-1

說明中位數6,平均數約等於6.17,所以輸出-1

備註:對於30%30%的資料: 1<=n<=1e3,1<=arr[i]<=1e9,1≤n≤1e3,1≤arr[i]≤1e9

對於100%100%的資料: 1<=n<= 1e6,1<= arr[i]<=1e9,1≤n≤1e6,1≤arr[i]≤1e9

用double就行

class

solution

};

題目描述

牛牛有乙個質數p,和兩個區間[a,b],[c,d],分別在兩個區間中取乙個數x,y。求有多少對(x,y)使得x∗y是p的倍數。給定你兩個區間,求從區間中取出數相乘是p的倍數的個數。

示例1輸入

3,7,4,6,3

輸出說明:

(3,4),(3,5),(3,6),(4,6),(5,6),(6,6),(7,6),(6,4),(6,5)一共有9個

備註:1≤a≤b≤10^9

1≤c≤d≤10^9

1≤p≤10^9

資料保證p為質數

這題如果直接列舉範圍的每乙個整數容易超時,直接列舉p的整數倍就行,然後判斷是否在範圍內再進行計算。

class

solution

} sum1+=(

(b-tmp)

/p);

sum=

(d-c+1)

*sum1;

for(

int i=

1;i*p<=d;i++)}

return sum+sum2+

((d-tmp)

/p)*

(b-a+

1-sum1);}

};

題目描述

疫情期間,牛牛整天攤在床上沉溺於手機,身體日漸虛胖,因此牛妹拿走家中的 wifi 路由器,迫使牛牛下床來拿到路由器。在這過程中,牛牛想要在盡可能短的時間內拿到路由器,而牛妹卻希望牛牛多走一會兒。現假設牛妹家中有 nn 個房間,任意兩個房間有且僅有一條路徑,起初路由器在編號為 xx 的房間內,牛牛在編號為 1 的房間內,牛牛與牛妹速度相同,當倆人同時開始移動,牛牛要經過幾個房間才能拿到路由器。

只要牛牛和路由器處在同一房間,便看作牛牛已拿到路由器。

輸入第乙個引數為 nn ,(1≤n≤100,000)

第二個引數為 xx ,(1≤x≤n)

第三個引數為大小為 n-1的點對 (u_i, v_i)

輸出牛牛最多需要經過的房間數(包括 1 號房間在內)。

示例1輸入

5,2,[(1,2),(2,3),(3,4),(2,5)]

輸出說明

當牛妹將路由器放到 4 號房間時,牛牛需要經過 1 -> 2 -> 3 -> 4 共四個房間。

這題沒看懂,聽老師解說是一棵樹,用dfs找出離牛妹近離牛牛遠的結點即可。。。

牛客程式設計巔峰賽S1第2場 青銅 白銀

牛牛現在有n張撲克牌,每張撲克牌都有點數和花色兩部分組成。點數為 1 9 的正整數,花色為 c d h s 其中的乙個,分別表示梅花 方塊 紅桃 黑桃。現在牛牛想按一定的順序把這n張牌扔掉。扔牌順序的規則如下1.1.如果現在還剩素數張牌,則將牌頂的牌扔掉 2.如果現在還剩非素數張牌,則將牌底的牌扔掉...

牛客程式設計巔峰賽S1第3場 青銅 白銀

time 2020 7 16 21 00 22 00 host 牛客網 牛客網題目傳送門 求所有長度為n的數中,各個位上的數字之和為m的這些數的和。題目雖然簡短,還是得認真讀兩遍。首先要表示長度為n的所有數,這裡用乙個 pow 10,n 1 pow 10,n 就可以表示範圍了。然後就是要求乙個數的位...

牛客巔峰賽S1第9場 黃金 鑽石

牛牛的木板 牛牛從牛畢那裡拿了一根長度為n的白木板,木板被等分成了n段 沒有被切割,只是虛擬劃分成了n段 其中有些段被牛畢用顏料染成了黑色。牛牛非常不喜歡黑色,它找來了一桶清洗劑決定對木板進行清洗,但是牛牛發現自己的清洗劑最多只能清洗m段。清洗完後,牛牛會把木板鋸成純色的幾段。例如假設木板是 黑黑黑...