diff --git a/rust/1299-Replace-Elements-With-Greatest-Element-On-Right-Side.rs b/rust/1299-Replace-Elements-With-Greatest-Element-On-Right-Side.rs new file mode 100644 index 000000000..5caf419ad --- /dev/null +++ b/rust/1299-Replace-Elements-With-Greatest-Element-On-Right-Side.rs @@ -0,0 +1,12 @@ +use std::cmp::max; + +impl Solution { + pub fn replace_elements(arr: Vec) -> Vec { + let length = arr.len(); + let mut ans: Vec = vec![-1; length]; + for i in (1..=(length - 1)).rev() { + ans[i - 1] = max(arr[i], ans[i]); + } + ans + } +} diff --git a/rust/392-Is-Subsequence.rs b/rust/392-Is-Subsequence.rs new file mode 100644 index 000000000..0853fe2db --- /dev/null +++ b/rust/392-Is-Subsequence.rs @@ -0,0 +1,17 @@ +impl Solution { + pub fn is_subsequence(s: String, t: String) -> bool { + let s: Vec = s.chars().collect(); + let t: Vec = t.chars().collect(); + let mut l = 0; + let mut r = 0; + while l < s.len() && r < t.len() { + if s[l] == t[r] { + l += 1; + r += 1; + } else { + r += 1; + } + } + l == s.len() + } +}