精華區beta Marginalman 關於我們 聯絡資訊
※ 引述 《dont (dont)》 之銘言: :   : 2657. Find the Prefix Common Array of Two Arrays :   : ## 思路 :   : 掃Array, 把A[i], B[i]的bit設1 : 檢查兩個mask &之後的bits數 :   : ## Code :   : ```cpp : class Solution { : public: : vector<int> findThePrefixCommonArray(vector<int>& A, vector<int>& B) { : int n = A.size(); :   : bitset<51> maskA=0, maskB=0; : vector<int> res(n, 0); : for (int i=0; i<n; ++i) { : maskA[A[i]] = 1; : maskB[B[i]] = 1; : res[i] = (maskA & maskB).count(); : } : return res; : } : }; : ``` :   思路: 掃過去 看當前元素有沒有在兩個字串出現過 Python Code: class Solution: def findThePrefixCommonArray(self, A: List[int], B: List[int]) -> List[int]: tmp = 0 result = [] for i in range(len(A)): if A[i] in A[:i+1] and A[i] in B[:i+1]: tmp += 1 if B[i] in A[:i+1] and B[i] in B[:i+1]: tmp += 1 if A[i] == B[i]: tmp -= 1 result.append(tmp) return result -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.241.201 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1736853745.A.232.html
oin1104: 大師 01/14 19:23
DJYOMIYAHINA: 大師 01/14 19:26
deatheo: 大師 01/14 19:38
Meaverzt: 大師 01/14 20:05