Skip to content

Commit f713c80

Browse files
committed
src/bin/maximize-number-of-subsequences-in-a-string.rs
1 parent 55a881a commit f713c80

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#![allow(dead_code, unused, unused_variables, non_snake_case)]
2+
3+
fn main() {}
4+
5+
struct Solution;
6+
7+
impl Solution {
8+
pub fn maximum_subsequence_count(text: String, pattern: String) -> i64 {
9+
let mut pattern = pattern.bytes();
10+
let a = pattern.next().unwrap();
11+
let b = pattern.next().unwrap();
12+
13+
let mut count = [0; 2];
14+
15+
let mut result = 0;
16+
17+
for i in text.bytes() {
18+
if i == a {
19+
count[0] += 1;
20+
} else if i == b {
21+
result += count[0];
22+
count[1] += 1;
23+
}
24+
}
25+
if a != b {
26+
result + count[0].max(count[1])
27+
} else {
28+
count[0] * (count[0] + 1) / 2
29+
}
30+
}
31+
}

0 commit comments

Comments
 (0)