fn main() {
    let s: Vec<char> = {  // 単一の文字列を受け取り, sに束縛する
        let mut line: String = String::new();
        std::io::stdin().read_line(&mut line).unwrap();
        line.trim().chars().collect()
    };
    let mut ans = 0;
    let mut count = 0;
    let mut i = 0;
    let yukicoder = ['y', 'u', 'k', 'i', 'c', 'o', 'd', 'e', 'r'];
    let mut f = false;
    while i < s.len() {
        if !f {
            count = 0;
        }
        if s[i] == 'y' && s.len() - i >= 9 {
            let mut flag = true;
            for j in 1..9 {
                if s[i + j] != yukicoder[j] {
                    flag = false;
                    break
                }
            }
            if flag {
                count += 1;
                i += 9;
            } else {
                i += 1;
            }
            f = flag;
        } else {
            f = false;
            i += 1;
        }
        ans = ans.max(count);
    }
    println!("{}", ans);
}