90 억의 하나님의 이름은 Arthur C. Clarke의 짧은 이야기입니다. 그것은 티베트 승려 그룹에 관한 것으로, 알파벳 순서로 쓰여진 하나님의 가능한 모든 이름을 적어 두는 데 전념하고 있습니다. 본질적으로, 그들은 몇 가지 규칙에 의해 제한되는 알파벳의 가능한 모든 순열을 쓰는 데 전념합니다. 이야기에서 수도원은 일부 엔지니어를 고용하여 모든 작업을 수행하는 프로그램을 작성합니다. 당신의 목표는 그 프로그램을 작성하는 것입니다.
규칙 :
수도사의 알파벳은 13 문자를 사용합니다 (내 추정에 따르면).
ABCDEFGHIJKLM
13 자 이상의 다른 문자를 사용할 수 있습니다 .가능한 이름의 최소 길이는 1 자입니다. 최대 길이는 9 자입니다.
어떤 캐릭터도 연속으로 3 번 이상 반복 할 수 없습니다.
AAABA
유효한 이름이지만AAAAB
그렇지 않습니다.에서 순서대로 (파일로) 모든 가능한 이름을 인쇄해야합니다 귀하의 프로그램
A
에MMMLMMMLM
없는 알파벳의 모든 문자로 구분 (줄 바꿈, 세미콜론, 무엇이든).이것은 코드 골프이며 모든 언어를 사용할 수 있습니다. 2014 년 6 월 1 일까지 가장 짧은 솔루션이 승리합니다.
편집 : 이름은로 시작하여 A
로 끝나고 MMMLMMMLM
수십억 개의 모든 이름을 순차적으로 진행해야합니다. 그러나 특정 순서는 당신에게 달려 있습니다. 그런 다음, 첫째 등 모두 두 글자로 된 이름을 모두 한 글자로 된 이름을 인쇄 할 수 있습니다 또는 당신이로 시작하는 모든 이름을 인쇄 할 수 있습니다 A
, 모든으로 시작하는 사람 B
, 또는 다른 패턴. 그러나 사람은 파일을 읽을 수 있고 시간이 있다고 가정 할 때 원하는 모든 논리적 순서에 따라 파일을 모두 확인할 수 있어야합니다.
f(k) = k^9 + k^8 + k^7 - 5*k^6 + k^5 + k^4 + 4*k^3 - 2*k^2 + k
. 세이지 구현 : goo.gl/0srwhq
105.8GB
모든 말과 행동 ! 별이 나오지 않아서 다행이다.