페이지를 불러오는 중…
해결한 사람
1
명
정답률
100.00
%
시간 제한
5
ms
메모리 제한
1024
MB
도둑 언어에서는 작성한 텍스트의 모든 자음 을 o으로 바꾸고, 모든 모음은 그대로 두어 번역한다.
예를 들어 hej은 hohejoj으로, moo은 momoo으로, ojoj은 ojojojoj으로 번역된다.
Oskar는 막 도둑 언어를 배웠지만, 가끔 일부 자음을 바꾸는 것을 잊는다. 즉, Oskar는 위와 같은 방식으로 자음의 부분집합만 번역한다. 원문과 Oskar가 만든 번역일 가능성이 있는 문자열이 주어진다. Oskar가 위의 설명에 따라 첫 번째 문자열을 두 번째 문자열로 번역했을 가능성이 있는지 판단해야 한다.
Oskar가 hejoj을 썼다면, 원문은 예를 들어 hej 또는 hejoj이었을 수 있다.
명확히 하기 위해 다음 문자들을 모음으로 정의한다: a,e,i,o,u,y. 그러면 그 밖의 모든 문자는 자음이다.
제출한 해답은 여러 테스트 케이스 그룹으로 평가된다. 한 그룹의 점수를 받으려면 그 그룹의 모든 테스트 케이스를 통과해야 한다.
그룹 | 점수 | 제한 조건
|| 문자열의 길이는 최대 20자이다
|| 문자열의 길이는 최대 100자이다
|| 추가 제한 조건이 없다.
첫 번째 줄에는 원문이었을 가능성이 있는지 확인할 단어가 주어진다. 두 번째 줄에는 Oskar가 쓴 단어가 주어진다. 두 단어는 모두 적어도 한 문자로 이루어지며, a-z의 문자만 포함하고 모두 소문자이다. 어느 문자열도 길이가 1000자를 넘지 않는다.
출력은 단 하나의 단어로 이루어져야 한다. 두 번째 단어가 첫 번째 단어를 번역한 것일 가능성이 있으면 ja을, 그렇지 않으면 nej을 출력한다.
즉, 첫 번째 단어의 자음 중 어떤 부분집합을 선택하여 도둑 언어 변환을 적용함으로써 두 번째 단어를 얻을 수 있을 때, 그리고 그럴 때에만 답은 ja이어야 한다.
ojojoj
ojojojoj
ja
ojjoj
ojojojoj
nej
lolf
lolfof
ja
예제 테스트 케이스 1의 설명: Oskar가 도둑 언어 변환을 적용할 자음으로 어느 것을 선택하는지는 중요하지 않다. 존재하는 j 중 정확히 하나를 선택하기만 하면 된다. Oskar가 첫 번째 것을 제외한 모든 j을 변환하는 것을 잊었다고 하자. 그러면 ojojoj은 ojojojoj으로 변환된다. 따라서 답은 "ja"이다.
예제 테스트 케이스 2의 설명: 첫 번째 문자열을 두 번째 문자열로 변환하는 것은 불가능하다. 이를 보이는 한 가지 방법은 첫 번째 문자열에 두 개의 j이 서로 인접해 있다는 점을 관찰하는 것이다. 이는 두 개의 j이 항상 서로 인접해 있게 된다는 뜻이다. 따라서 첫 번째 문자열을 두 번째 문자열로 변환할 수 없으며, 답은 "nej"이다.
Programmeringsolympiaden
로그인 상태를 확인하는 중입니다.