fn check_hackerrank(s: &str) -> bool { let mut hit = "hackerrank".chars(); let mut h = hit.next().unwrap(); for c in s.to_lowercase().chars() { if h == c { match hit.next() { None => { return true; }, Some(x) => { h = x; } } } } return match hit.next() { None => true, _ => false } } fn main() { let read_line = || -> String { let mut input_string = String::new(); std::io::stdin().read_line(&mut input_string).ok(); input_string.trim_right().to_string() }; let n = read_line().parse::().unwrap(); for _ in 0..n { let s = read_line(); println!("{}", if check_hackerrank(s.as_ref()) { "YES" } else { "NO" }); } }