leetcode 第27場雙周賽

2021-10-07 08:52:14 字數 820 閱讀 4343

通過翻轉子陣列使兩個陣列相等

檢查乙個字串是否包含所有長度為k的二進位制子串

課程安排ⅳ

摘櫻桃ⅱ

3分 簡單

4分 中等

5分 中等

6分 困難

翻譯下題意,其實就是問我們兩個陣列是否相等,判斷陣列是否相等有很多方法,這邊我直接排序,遍歷一遍看是否有不一樣的元素

陣列排序的複雜度,故為o(nlogn)

class solution 

return ans;

}};

簡單dp

dp[i][j][k]表示機械人都是在第i行,一號機械人在第j列,二號機械人在第k列的狀態的最多櫻桃數

狀態轉移:

dp[i][j][k]=max(dp[i][j][k],dp[i-1][ii][jj]+sum);

sum是當前狀態,兩個機械人當前位置能摘到的櫻桃總數

ii!=jj:sum=grid[i][ii]+grid[i][jj];

ii==jj:sum=grid[i][ii];

​當前狀態由上一行的某一狀態轉移過來,某一狀態一號機械人在第ii列,二號機械人在第jj列

只要列舉ii,jj即可

三層for迴圈,裡面還套了兩層for迴圈,但這個迴圈是有限制的,單層長度不超過3,所以這兩層for訓練複雜度最高為3*3

o(n^3*9)

class solution }}

}}

int ans=0;

for(int i=1;i<=col;i++)

}return ans;

}};

leetcode第8場雙周賽

這次雙周賽有意外,第二第三題按照提示返回int會報錯,要返回list 第一題給你乙個字串 s,返回只含 單一字母 的子串個數。示例 1 輸入 aaaba 輸出 8 解釋 只含單一字母的子串分別是 aaa aa a b aaa 出現 1 次。aa 出現 2 次。a 出現 4 次。b 出現 1 次。所以...

leetcode第 24 場雙周賽

給你乙個整數陣列nums。你可以選定任意的正數startvalue 作為初始值。你需要從左到右遍歷nums陣列,並將 startvalue 依次累加上nums陣列中的值。請你在確保累加和始終大於等於 1 的前提下,選出乙個最小的正數作為 startvalue 輸入 nums 3,2,3,4,2 輸出...

Leetcode 第30場雙周賽

第一眼看到這題就覺得用python做會很簡單,但是我的python實在是不太行,所以就拿c 硬懟了。c class solution string ms 12 string res int len s.size res res s len 4 s len 3 s len 2 s len 1 stri...