2019位元組跳動筆試題

2021-09-12 17:19:57 字數 1609 閱讀 7514

第三題

有n個人參加程式設計比賽,比賽結束後每個人都得到乙個分數,現在所有人排成一圈(第乙個和第n個相鄰)領取獎品,要求:

1.現在某個人的分數比左右的人告,那麼獎品數量也比左右的人多;

2.每個人至少得到乙個獎品

問最少應該準備多少個獎品?

測試用例:

n組資料

每組陣列輸入n個人,n個人的分數

輸入:2

21 2

41 2 3 3輸出3

8

leetcode相似題:candy

思路:先從左至右遍歷,如果i+1的元素比i要大,那個i+1的獎品數就等於i的獎品數+1,否則就保持為1.然後再從右向左遍歷,如果當前i的分數比i+1的分數要大,那麼當前分數就等於max(當前的分數, i+1的分數+1)。

**:

int main()

for(int i=n-1; i>=0; i--)

int sum=0;

for(int i=0;i第四題

有n根繩子,第i根繩子長度為li,現在需要m根等長的繩子,你可以對n根繩子進行任意剪裁(不能拼接),請你幫忙設計出這m根繩子最長的長度是多少?

輸入描述:

輸入n,m

n個li

輸入:3 4

3 5 4

輸出:2.50

二分(注意精度,以及保留兩位小數)

#include #include #include #include #include #include using namespace std;

vectorl;

int n,m;

bool check(double k)

double slove(vector& l)

sort(l.begin(), l.end());

double result;

result=slove(l);

printf("%.2f", result);

return 0;

}

第二題:

修正拼寫錯誤:

3個相同的字母連在一起,去掉乙個:helllo–>hello

兩對一樣的字母(aabb型)連在一起,一定是拼寫錯誤,去掉第二對的乙個字母就好了,比如:helloo–>hello

上面的規則優先「從左到右」匹配,即aabbcc,優先考慮修復aabb,結果為aabcc

思路:新建乙個新的字串,在新的字串上進行判斷,如果沒有錯誤就將字元新增到newstring中,否則繼續根據newstring之前的字串進行判斷。

輸入:

2helloo

wooooooow

輸出:hello

woow

**:

#include #include #include #include using namespace std;

int main()

else

}cout<}

return 0;

}

9 6 位元組跳動筆試

大概題意 有個樓梯比較高,問有多少種可以方式可以走上去,但有特殊得要求 一是每次可以走一步或者兩步,二是不能連續的走兩步 計算有多少種方法到達頂層 輸入 樓層的層數 輸出 一共有多少種走法 思路 直接dp就好了,設dp方程為dp i 2 dp i 0 表示走一步之後達到第i層,那麼轉移方程就是dp ...

位元組跳動筆試題

要求 輸入陣列長度,然後輸入陣列中的各個元素,最後輸入整數k,要求找出陣列中三個元素小於k的三個元素,例如 輸入陣列長度 6 輸入陣列元素 2 0 1 2 3 6 輸出三元組 共4個 下面給出思路和 思路 1 獲得使用者輸入的陣列長度n,若n不為整數,則提示錯誤。2 建立陣列。3 獲得使用者輸入的陣...

2019位元組跳動秋招筆試

題目描述 小明目前在做乙份畢業旅行的規劃。打算從北京出發,分別去若干個城市,然後再回到北京,每個城市之間均乘坐高鐵,且每個城市只去一次。由於經費有限,希望能夠通過合理的路線安排盡可能的省一些路上的花銷。給定一組城市和每對城市之間的火車票的價錢,找到每個城市只訪問一次並返回起點的最小車費花銷。輸入描述...