Problem:
Score : 200 points

Problem Statement

A string is called a KEYENCE string when it can be changed to keyence by removing its contiguous substring (possibly empty) only once.

Given a string S consisting of lowercase English letters, determine if S is a KEYENCE string.

Constraints

The length of S is between 7 and 100 (inclusive).

S consists of lowercase English letters.

Input

Input is given from Standard Input in the following format:

S

Output

If S is a KEYENCE string, print YES; otherwise, print NO.

Sample Input 1

keyofscience

Sample Output 1

YES

keyence is an abbreviation of key of science.

Sample Input 2

mpyszsbznf

Sample Output 2

NO

Sample Input 3

ashlfyha

Sample Output 3

NO

Sample Input 4

keyence

Sample Output 4

YES

Solution in Go (1.14.1) (judge verdict: Accepted)

package main

import (
	"fmt"
)

func main() {
	var a string
	fmt.Scan(&a)
	target := "keyence"
	ans := ""
	for i := 0; i < 7; i++ {
		if a[i:i+1] == target[i:i+1] {
			ans = ans + a[i:i+1]
		} else {
			ans += a[len(a)+i-7 : len(a)]
			break
		}
	}
	if ans == target {
		fmt.Println("YES")
	} else {
		fmt.Println("NO")
	}

}