fn main() { let s = input_line_vch(); let mut count = vec![0, 0, 0]; for ch in &s { match ch { 't' => count[0] += 1, 'r' => count[1] += 1, 'e' => count[2] += 1, _ => (), } } count[2] /= 2; println!("{}", count.iter().min().unwrap()); } #[allow(unused)] fn input_a_value() -> T { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().parse().ok().unwrap() } #[allow(unused)] fn input_line() -> Vec { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim() .split_whitespace() .map(|e| e.parse().ok().unwrap()) .collect() } #[allow(unused)] fn input_matrix_num(n_lines: usize) -> Vec> { (0..n_lines).map(|_| input_line()).collect() } #[allow(unused)] fn input_line_string() -> String { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().to_string() } #[allow(unused)] fn input_line_vch() -> Vec { input_line_string().chars().collect() } #[allow(unused)] fn input_matrix_ch(n_lines: usize) -> Vec> { (0..n_lines).map(|_| input_line_vch()).collect() }