leetcode 第191場周賽

2021-10-07 10:45:21 字數 1256 閱讀 5046

陣列中兩元素的最大乘積

切割後面積最大的蛋糕

重新規劃路線

兩個盒子中球的顏色數相同的概率

3分 簡單

4分 中等

5分 中等

7分 困難

其實就是題目就是要求陣列中兩個最大的值

維護最大值first_mx,第二大值second_mx

遍歷陣列更新這兩值即可

相當於遍歷了一遍nums陣列,故為o(n)

class solution 

else

}return (first_mx-1)*(second_mx-1);

}};

先將horizontalcuts,和verticalcuts從小到達排一下

兩個相鄰水平切口的距離就是矩形的高

兩個相鄰豎直切口的距離就是矩形的寬

維護高寬的最大值即可

遍歷都是o(n),最高是從小到大sort的複雜度,最後的複雜度是為o(nlogn)

const long long mod=1e9+7;

class solution

}int minreorder(int n, vector>& connections)

dfs(1,0);

return ans;

}};

簡單dp(為方便處理,房屋、顏色編號都從1開始,可能需要轉化一下)

dp狀態表示放完前i種顏色的球之後,第乙個盒子有j個球,共x種顏色,第二個盒子有j個球,共y種顏色 的方案數

dp[i][j][k][x][y]

​1)對於第i種球,全加給第乙個盒子,或這全加給第二個盒子

dp[i][j][k][x][y]+=dp[i-1][j-t][k][x-1][y]*c[j][t];

全加給某個盒子,該盒子顏色加1,另乙個顏色數不變,該盒子個數加上t

2)對於第i種求,部分加給第乙個盒子,部分加給第二個盒子

for(int b=1;bo(n^2 * k^3 * max(ni))

class solution

​        for(int i=1;i<=n;i++)}}

}for(int b=1;b=b;j--)}}

}}

}long double ans1=0,ans2=0;

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

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

}ans1=ans1/ans2;

return ans1;

}};

Leetcode 第191場周賽題解

知識點 時間複雜度 暴力列舉 o n 從 1 到 n 1 列舉,計算 nums i 1 nums i 1 1 並記錄最大值。class solution return anw 知識點 時間複雜度 排序,列舉 o nlog n mlog m 如果知道切完後蛋糕的最大高度及寬度,那麼就可以求得最大面積。...

第191場周賽

class solution return res 這裡有個注意的點,maxh maxw這兩個int的值的乘積會超過int的範圍,所以要先轉換為double class solution maxh maxh h horizontalcuts hcut 1 maxh h horizontalcuts ...

leetcode 第132場周賽

愛麗絲和鮑勃一起玩遊戲,他們輪流行動。愛麗絲先手開局。最初,黑板上有乙個數字n。在每個玩家的回合,玩家需要執行以下操作 如果玩家無法執行這些操作,就會輸掉遊戲。只有在愛麗絲在遊戲中取得勝利時才返回true,否則返回false。假設兩個玩家都以最佳狀態參與遊戲。示例 1 輸入 2輸出 true解釋 愛...