Menu
CoddyTech

Alien Dictionary

단어 목록이 당신이 모르는 알파벳 순서로 정렬되어 있습니다. 소문자 영어 알파벳 26개가 어떤 비밀 순서로 배열되어 있습니다. 단어는 일반적인 방식으로 비교합니다. 두 단어가 처음으로 다른 위치에서 알파벳상 어느 글자가 먼저 오는지에 따라 순서가 결정되며, 한 단어가 다른 단어의 시작 부분과 같으면 더 짧은 단어가 먼저 옵니다.

단어들에 나타나는 글자들을 알파벳 순서대로 하나의 문자열로 반환하세요. 목록에 맞는 순서가 여러 개라면 일반적인 사전 순서에서 가장 먼저 오는 순서를 반환하세요. 어떤 순서도 맞지 않으면 "invalid"를 반환하세요.

함수

alienOrder(words: string-array) → string
wordsstring-array
알 수 없는 알파벳 순으로 정렬된 단어
반환값string
조건에 맞는 가장 작은 순서의 문자들 또는 "invalid"

제약 조건

  • 1 ≤ words.length ≤ 5000
  • 1 ≤ words[i].length ≤ 10
  • 모든 단어는 소문자 영어 문자만 포함합니다.
  • 같은 단어가 두 번 이상 나타날 수 있습니다. 필수 출력 형식: <translation> [번역한 콘텐츠] </translation>

예제

입력
words = ["tea", "ten", "ate", "act", "cat"]
출력
"etacn"
설명
tea와 ten은 처음으로 a와 n에서 다르므로, a가 n보다 먼저 옵니다. 다른 쌍들은 t가 a보다 먼저, t가 c보다 먼저, a가 c보다 먼저 와야 한다는 것을 보여 줍니다. e에 대한 규칙은 없으므로, 가장 작은 순서는 e를 맨 앞에 두고, 그다음 t, 그다음 a, 그리고 그 시점에는 둘 다 자유로운 c와 n을 두되 c를 먼저 두는 것입니다.

lock icon제출 시 숨은 테스트 +20개

challenge icon

후속 질문

맞춤 순서가 유일한지 어떻게 알 수 있을까요?

코드 초기화
def alienOrder(words):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

words = ["tea", "ten", "ate", "act", "cat"]

기대값

"etacn"