20241024 finished.

This commit is contained in:
2024-10-24 09:08:13 +08:00
parent 3102da99a8
commit bce8de1c85
266 changed files with 2321 additions and 2014 deletions

View File

@@ -3,38 +3,37 @@
*/
pub struct Solution {}
// submission codes start here
impl Solution {
pub fn max_consecutive_answers(answer_key: String, k: i32) -> i32 {
let str : Vec<char> = answer_key.chars().collect();
let str: Vec<char> = answer_key.chars().collect();
Self::max_consecutive_char(&str, k, 'T').max(Self::max_consecutive_char(&str, k, 'F'))
}
fn max_consecutive_char(str: &Vec<char>, k: i32, c : char) -> i32 {
fn max_consecutive_char(str: &Vec<char>, k: i32, c: char) -> i32 {
let n = str.len();
let mut result = 0;
let (mut left, mut sum) = (0, 0);
for right in 0..n {
sum += match str[right] == c {
true => 0,
false => 1
false => 1,
};
while sum > k {
sum -= match str[left] == c {
true => 0,
false => 1
false => 1,
};
left += 1;
}
result = result.max(right - left + 1);
}
result as i32
}
}