Problem:
Score : 100 points

Problem Statement

A Hitachi string is a concatenation of one or more copies of the string hi.

For example, hi and hihi are Hitachi strings, while ha and hii are not.

Given a string S, determine whether S is a Hitachi string.

Constraints

The length of S is between 1 and 10 (inclusive).

S is a string consisting of lowercase English letters.

Input

Input is given from Standard Input in the following format:

S

Output

If S is a Hitachi string, print Yes; otherwise, print No.

Sample Input 1

hihi

Sample Output 1

Yes

hihi is the concatenation of two copies of hi, so it is a Hitachi string.

Sample Input 2

hi

Sample Output 2

Yes

Sample Input 3

ha

Sample Output 3

No

Solution in Java8 (OpenJDK 1.8.0) (judge verdict: Runtime Error)

import java.util.Scanner;

public class Main {

	public static void main (String[] args) {

		Scanner scan = new Scanner(System.in);
		String str = scan.nextLine();

		int i=0;
		while(i<str.length()) {
			if(str.contains("hi")) {
				i = str.indexOf("hi")+2;
				char c = str.charAt(i);
				if( c !='i') {
					System.out.println("Yes");
					break;
				}
				str = str.substring(i);
			} else if(str.contains("hii")) {
				i = str.indexOf("hii")+1;
				str = str.substring(i);
				if(str.contains("hi") && !str.contains("hii")) {
					System.out.println("Yes");
					break;
				}
			} else {
				System.out.println("No");
				break;
			}
		}
		if(i>=str.length()) {
			System.out.println("No");
		}
	}

}