陣列中兩元素的最大乘積
切割後面積最大的蛋糕
重新規劃路線
兩個盒子中球的顏色數相同的概率
3分 簡單
4分 中等
5分 中等
7分 困難
其實就是題目就是要求陣列中兩個最大的值
維護最大值first_mx,第二大值second_mx
遍歷陣列更新這兩值即可
相當於遍歷了一遍nums陣列,故為o(n)
class solution先將horizontalcuts,和verticalcuts從小到達排一下else
}return (first_mx-1)*(second_mx-1);
}};
兩個相鄰水平切口的距離就是矩形的高
兩個相鄰豎直切口的距離就是矩形的寬
維護高寬的最大值即可
遍歷都是o(n),最高是從小到大sort的複雜度,最後的複雜度是為o(nlogn)
const long long mod=1e9+7;簡單dp(為方便處理,房屋、顏色編號都從1開始,可能需要轉化一下)class solution
}int minreorder(int n, vector>& connections)
dfs(1,0);
return ans;
}};
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解釋 愛...