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 C++14 (GCC 5.4.1) (judge verdict: Accepted)

#include <iostream>
#include <string>


int main(){
  std::string S;
  std::cin>>S;
  
  bool check=false;
  
  int remnum=S.length()-9;
  
  for(int j=0;j<S.length()-remnum;j++){
    std::string temp1=S.substr(0,j);
    if(j==S.length()-remnum-1){
      if(temp1=="keyence") check=true;
      break;
    }
    else{
      std::string temp2=S.substr(j+S.length()-7);
      if(temp1+temp2=="keyence") check=true;
    }
  }
  
  if(S=="keyence")  std::cout<<"YES"<<std::endl;
  else if(check) std::cout<<"YES"<<std::endl;
  else std::cout<<"NO"<<std::endl;
  
  return 0;
  
}