fn getline() -> String { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s } fn judge(s: &mut String) -> bool { let vs: String = s.matches(char::is_numeric).collect(); *s == vs && s.chars().nth(0).unwrap()!= '0' && (s.parse::().unwrap() <= 12345) } fn main() { let s = getline(); let result:bool = s.trim().lines() .fold(true, |acc, ss| acc && judge(&mut ss.to_string())); println!("{}", if result { "OK" } else { "NG" }); }