package main import ( "bufio" "fmt" "os" "strings" ) func main() { in := bufio.NewScanner(os.Stdin) for in.Scan() { if check(in.Text()) { fmt.Println("OK") } else { fmt.Println("NG") } } } func check(str string) bool { if len(str) <= 8 { return false } var c1, c2, c3, c4 int for _, s := range str { if s >= 'a' && s <= 'z' { c1 = 1 } else if s >= 'A' && s <= 'Z' { c2 = 1 } else if s >= '0' && s <= '9' { c3 = 1 } else { c4 = 1 } } if c1+c2+c3+c4 < 3 { return false } for i := 0; i < len(str)-2; i++ { if len(strings.Split(str, str[i:i+3])) >= 3 { return false } } return true }