天天看點

百度2017春招筆試真題程式設計題集合

2021-04-29 15:44完成

目錄

1

2

3

4

5

度度熊想去商場買一頂帽子,商場裡有N頂帽子,有些帽子的價格可能相同。度度熊想買一頂價格第三便宜的帽子,問第三便宜的帽子價格是多少?

如果存在第三便宜的帽子,請輸出這個價格是多少,否則輸出-1

set去重後排序即可

一個數軸上共有N個點,第一個點的坐标是度度熊現在位置,第N-1個點是度度熊的家。現在他需要依次的從0号坐标走到N-1号坐标。

但是除了0号坐标和N-1号坐标,他可以在其餘的N-2個坐标中選出一個點,并直接将這個點忽略掉,問度度熊回家至少走多少距離?

把一個點i去掉可以節省\(abs(a[i]-a[i-1])+abs(a[i]-a[i+1])-abs(a[i-1]-a[i+1])\)

找到可以節省的最大值即可

三維空間中有N個點,每個點可能是三種顔色的其中之一,三種顔色分别是紅綠藍,分别用'R', 'G', 'B'表示。

現在要找出三個點,并組成一個三角形,使得這個三角形的面積最大。

但是三角形必須滿足:三個點的顔色要麼全部相同,要麼全部不同。

(N <= 50) 友好的範圍

考慮到這題友好的變量範圍,實際這題是考察面積公式

當練習編碼規範了

筆試時可不能寫這麼長

度度熊有一個N個數的數組,他想将數組從小到大 排好序,但是萌萌的度度熊隻會下面這個操作:

任取數組中的一個數然後将它放置在數組的最後一個位置。

問最少操作多少次可以使得數組從小到大有序?

(N <= 50, 每個數的絕對值小于等于1000) 友好的範圍

輸入例子1:

19 7 8 25

輸出例子1:

直接暴力,

枚舉ans從0到n-1。對于每一個枚舉的ans值,把前ans大的數移到最後去

判斷是否可行。

問你降位數為k的n-排列個數。結果對2017取模。

歐拉數闆子題。

\[A(n, m)=\left\{\begin{array}{ll}

0 & \text { when } m>=n \text { or } n=0 \\

1 & m=0 \\

(n-m) A(n-1, m-1)+(m+1) A(n-1, m) & \text { otherwise }

\end{array}\right.

\]

狀态轉移方程是說,考慮n-1排列到【m個降位的n-排列】的轉移。

如果n插在【本來的m個降位的2個數中間】或者【本來的n-1排列的最後一位】,降位數保持不變,有m+1個插法。這解釋了右邊的第二項。

如果n插在其他位置,有\((n+1)-(m+1)=n-m\)種插法,降位數會加一。這解釋了右邊的第一項。

繼續閱讀