位元組跳動筆試題 豆油瓶

2022-09-14 04:39:09 字數 982 閱讀 8071

【位元組跳動】2019筆試題--豆油瓶_mart1nn的部落格

題目:抖音中每兩個使用者之間互動超過3次即互為豆油瓶,若使用者1與使用者2互動超過3次,使用者2又與使用者3互動超過三次,則使用者1與使用者3也為豆油瓶。且使用者不能與自身互動(即a[i][i] = 0,i=0,1,2,3…)

例1:輸入:

30 2 4

2 0 0

4 0 0

輸出:2

解析:第一行輸入的是陣列的大小,即nxn(例1中是3x3),後面n行即為n個使用者之間互動的次數

也有個帖子(找不到了),說豆油有傳遞關係,如ab>=3, bc>=3, abc構成乙個豆油瓶,而不是ab乙個,bc乙個。他把它看作圖來做的。如果不考慮傳遞關係,似乎數數可以:

n = n; //

假設每個使用者互動次數都不夠,每個使用者乙個豆油瓶

for (int y = 0; y < n; y++)

}return

n;//

比如a和b豆油,b和c豆油。處理ab時--n, ba不處理,bc時--n

//比如a和b豆油,c和d豆油。處理ab時--n, cd時--n

好像反了,是傳遞關係成立時才對。說什麼「組合數學是數學裡被鄙視的」是一種凡爾賽行為!:-) 好在我不用找工作。哦,那話不是我說的,我覺得組合數學很難。

a b c d 4

ab c d 3

abc d 2; ab bc d 3

可能只是特例對,**根本就不對。忘了哪個名人說「要簡單,但過分簡單就不對」(大意)

對,不對:-) ab, ac, bc都減一,就不對了。也許可以搶救一下:處理完ac就清零c列會破壞輸入。遇到bc先檢查c列的上一行?但o(n^3)沒啥意思。用hashset算是降了指數,set能把乙個n變成log(n)? 也許可以來個bool handled[n]; 變o(n^2)? 有傳遞關係時,任何乙個人不能同時屬於多個小油瓶。ab, bc和ac, bc都會變成abc, handled[2]為1說明c已經被處理過了。

位元組跳動筆試題

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

2019位元組跳動筆試題

第三題 有n個人參加程式設計比賽,比賽結束後每個人都得到乙個分數,現在所有人排成一圈 第乙個和第n個相鄰 領取獎品,要求 1.現在某個人的分數比左右的人告,那麼獎品數量也比左右的人多 2.每個人至少得到乙個獎品 問最少應該準備多少個獎品?測試用例 n組資料 每組陣列輸入n個人,n個人的分數 輸入 2...

位元組跳動筆試面試經歷

一面是一位和藹的中年程式設計師。1.高階函式 一步一步引導我說出思路!最後面試結束後我查了乙個是乙個js術語。面試官對我說 因為你們學校學習和工作之間是有差距的,所以不會直接問你知識,我會給你一些線索看看你的思路 這個問題大概答出了大半題,大概是這樣。2.筆試經歷 讓我驚訝的是面試官還願意聽聽我筆試...