시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 128 MB | 410 | 80 | 45 | 21.127% |
중세 기사 시대에, 사악한 조롱에 대항하는 정신력, 즉 '멘탈'은 아주 중요한 것이었다.
킹 현우는 자신의 노예들이 약한 멘탈을 갖기를 바라지 않았다. 그래서 자신의 엄청난 코딩 능력으로 트레이닝용 도발 봇을 만들어냈다.
하지만 현우는 아직 인공지능 수업을 듣지 않았고, 아는 것이라곤 오토마타 1단원 뿐이었기 때문에 같은 상태에서 같은 입력을 받는다면 항상 같은 행동을 하는 것이 보장되는 봇 하나를 짜는 것이 고작이었다.
현우가 만든 도발 봇은 아래의 테이블과, 이어 설명할 몇 가지 규칙에 따라 행동한다.
<taunt> ::= <sentence> | <taunt> <sentence> | <noun>! | <sentence> <sentence> ::= <past-rel> <noun-phrase> | <present-rel> <noun-phrase> | <past-rel> <article> <noun> <noun-phrase> ::= <article> <modified-noun> <modified-noun> ::= <noun> | <modifier> <noun> <modifier> ::= <adjective> | <adverb> <adjective> <present-rel> ::= your <present-person> <present-verb> <past-rel> ::= your <past-person> <past-verb> <present-person> ::= steed | king | first-born <past-person> ::= mother | father | grandmother | grandfather | godfather <noun> ::= hamster | coconut | duck | herring | newt | peril | chicken | vole | parrot | mouse | twit <present-verb> ::= is | “masquerades as” <past-verb> ::= was | personified <article> ::= a <adjective> ::= silly | wicked | sordid | naughty | repulsive | malodorous | ill-tempered <adverb> ::= conspicuously | categorically | positively | cruelly | incontrovertibly
쌍따옴표 안에 있는 문구는 항상 하나의 단어로 취급된다.
위의 표를 읽는 법을 모른다면 이 링크를 참고하자.
봇은 위의 테이블을 참조하여, 아래와 같은 규칙으로 도발을 한다.
킹 현우는 이 복잡한 봇을 통해 노예들을 훈련시킬 것이다.
킹 현우의 도발 봇이 어떻게 행동하게 될 지 시뮬레이션해 보자.
입력은 임의의 여러 줄로 구성된다.
각 줄은 봇의 상대가 말한 내용으로 구성되어 있으며, 항상 알파벳 대소문자, 숫자, ",.-!?", 공백으로만 이루어져 있다.
모든 라인은 최소 1개, 최대 72개의 문자로 이루어져 있으며, 단어는 항상 하나 이상의 공백으로 구분되어져 있다.
모든 라인에 대해, 단어가 0개인 경우는 없다.
각 입력에 대해, 아래와 같이 출력한다.
모든 도발은 대문자로 시작해야 하며, 추가적인 공백 문자가 있어서는 안 된다.
쌍따옴표 안에 있는 문구는 항상 하나의 단어로 취급되며, 쌍따옴표는 도발에 포함되지 않는다. 도발을 출력할 때, 도발 앞과 뒤에 위에서 설명한 공백 문자 이외에 다른 공백 문자가 있어서는 안 된다.
Hello! Are you feeling alright? Is there someone else I could talk to? Anyone at all? We seek the holy grail . . .
Knight: Hello! Taunter: Your mother was a hamster. Knight: Are you feeling alright? Taunter: Coconut! Your steed is a silly duck. Knight: Is there someone else I could talk to? Taunter: Your father personified a herring. Taunter: Your grandmother was a newt. Taunter: Peril! Your king masquerades as a conspicuously wicked chicken. Knight: Anyone at all? Taunter: Your grandfather personified a vole. Knight: We seek the holy grail . . . Taunter: (A childish hand gesture). Taunter: Your godfather was a parrot.
ICPC > Regionals > North America > Pacific Northwest Regional > 2006 Pacific Northwest Region Programming Contest I번