Compare commits

...

2 Commits

Author SHA1 Message Date
li-chx 6e2610c882 611. 有效三角形的个数 2025-09-26 16:51:23 +08:00
li-chx 74255bbe8b 3508. 设计路由器 2025-09-26 16:39:15 +08:00
1 changed files with 20 additions and 23 deletions

View File

@ -1,32 +1,29 @@
mod arr; mod arr;
struct Solution; struct Solution {}
impl Solution { impl Solution {
pub fn sort_vowels(s: String) -> String { pub fn triangle_number(nums: Vec<i32>) -> i32 {
let mut chars = vec![0;10]; if nums.len() < 3 {
let mut indexs = vec![]; return 0;
let mut s : Vec<char> = s.chars().collect(); }
for i in 0..s.len() { let mut nums = nums;
let c = s[i]; nums.sort();
let idx = "AEIOUaeiou".find(c); let mut ans = 0;
if let Some(idx) = idx { for i in 0..nums.len() - 2 {
chars[idx] += 1; let mut r = i + 2;
indexs.push(i); for l in i + 1..nums.len() - 1 {
while r < nums.len() && nums[i] + nums[l] > nums[r] {
r += 1;
}
ans += ((r - l) as i32 - 1).max(0);
} }
} }
let mut i = 0; ans
for j in 0..10 {
let c = "AEIOUaeiou".chars().nth(j).unwrap();
while chars[j] > 0 {
chars[j] -= 1;
s[indexs[i]] = c;
i += 1;
}
}
s.into_iter().collect()
} }
} }
fn main() { fn main() {
let sl = Solution::sort_vowels("lEetcOde".to_string()); let arr = vec![7, 0, 0, 0];
println!("{:?}", sl); println!("{}", Solution::triangle_number(arr));
} }