diff options
Diffstat (limited to 'other/count_and_say.rs')
-rw-r--r-- | other/count_and_say.rs | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/other/count_and_say.rs b/other/count_and_say.rs deleted file mode 100644 index 55a1fec..0000000 --- a/other/count_and_say.rs +++ /dev/null @@ -1,32 +0,0 @@ -struct Solution; - -impl Solution { - pub fn count_and_say(n: i32) -> String { - if n == 1 { - return "1".to_string(); - } - let mut output: Vec<char> = vec![]; - let mut last_char = ' '; - let mut count: u8 = '0' as u8; - for char in Solution::count_and_say(n - 1).chars().into_iter() { - if last_char == ' ' { - last_char = char; - count = '1' as u8; - } else if char == last_char { - count += 1; - } else { - output.push(count as char); - output.push(last_char); - last_char = char; - count = '1' as u8; - } - } - output.push(count as char); - output.push(last_char); - output.into_iter().collect() - } -} - -fn main() { - print!("{}", Solution::count_and_say(4)); -} |