給定乙個陣列a
,將其劃分為兩個不相交(沒有公共元素)的連續子陣列left
和right
, 使得:
在完成這樣的分組後返回left
的長度。可以保證存在這樣的劃分方法。
示例 1:
輸入:[5,0,3,8,6]輸出:3解釋:left = [5,0,3],right = [8,6]示例 2:
輸入:[1,1,1,0,6,12]輸出:4解釋:left = [1,1,1,0],right = [6,12]
2 <= a.length <= 30000
0 <= a[i] <= 10^6
可以保證至少有一種方法能夠按題目所描述的那樣對a
進行劃分。
本題與leetcode 974 和被k整除的子陣列相似,都需要定義乙個陣列,考察思維的靈活性。
int partitiondisjoint(vector& a) ;
for(int i=len-2;i>=0;i--)
int l = 0,lmax = a[0];
while(l < len-1)
}return l+1;
}
leetcode 915 分割陣列
給定乙個陣列a,將其劃分為兩個不相交 沒有公共元素 的連續子陣列left和right,使得 在完成這樣的分組後返回left的長度。可以保證存在這樣的劃分方法。示例 1 輸入 5,0,3,8,6 輸出 3解釋 left 5,0,3 right 8,6 示例 2 輸入 1,1,1,0,6,12 輸出 4...
leetcode915 分割陣列
給定乙個陣列 a,將其劃分為兩個不相交 沒有公共元素 的連續子陣列 left 和 right,使得 在完成這樣的分組後返回 left 的長度。可以保證存在這樣的劃分方法。不檢驗 all l r for l in left for r in right 而是檢驗 max left min right ...
Leetcode 915 分割陣列
給定乙個陣列 a,將其劃分為兩個不相交 沒有公共元素 的連續子陣列 left 和 right,使得 left 中的每個元素都小於或等於 right 中的每個元素。left 和 right 都是非空的。left 要盡可能小。在完成這樣的分組後返回 left 的長度。可以保證存在這樣的劃分方法。示例 1...