代码拉取完成,页面将自动刷新
#! /usr/bin/env rust-script
use std::cmp;
struct Solution;
impl Solution {
pub fn partition_disjoint(nums: Vec<i32>) -> i32 {
let n = nums.len();
let mut min_right = vec![nums[n-1]; n];
let mut max = 0;
for i in (0..n-1).rev() {
println!("{},{} ,{}", i, nums[i], min_right[i+1]);
min_right[i] = cmp::min(nums[i], min_right[i+1]);
}
println!("{:?}", min_right);
for i in 0..n {
max = cmp::max(max, nums[i]);
if max <= min_right[i+1] {
return (i+1) as i32;
}
}
-1
}
}
fn main() {
let nums = vec![90,47,69,10,43,92,31,73,61,97];
let ans = Solution::partition_disjoint(nums);
assert_eq!(ans, 3);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。