rust_test/src/main.rs

37 lines
921 B
Rust
Raw Normal View History

use std::cmp::max;
struct Solution;
impl Solution {
pub fn longest_subarray(nums: Vec<i32>) -> i32 {
let mut ans = 0;
let mut ans_val = 0;
let mut last = 0;
let mut count = 0;
for i in 0..nums.len() {
if nums[i] != last {
if ans_val < last {
ans_val = last;
ans = count;
}else if ans_val == last {
ans = max(count,ans);
}
last = nums[i];
count = 1;
} else {
count += 1;
2025-07-22 21:59:38 +08:00
}
}
if ans_val < last {
ans = count;
}else if ans_val == last {
ans = max(count,ans);
}
ans
}
}
fn main() {
let sl = Solution::longest_subarray(vec![96317,96317,96317,96317,96317,96317,96317,96317,96317,279979]);
println!("{:?}", sl);
}