Decode Ways LeetCode solution in Rust
1impl Solution {2pub fn num_decodings(s: String) -> i32 {3let mut prev = 1;4let mut prev_2 = 0;5let mut prev_ch = 'X';6let mut cur = 1;7for ch in s.chars().rev() {8if ch == '1' || (ch == '2' && prev_ch as u8 <= '6' as u8) {9cur = prev_2 + prev;10} else if ch == '0' {11cur = 0;12}13prev_2 = prev;14prev = cur;15prev_ch = ch;16}17cur as _18}19}