저는이 문자열에서 다양한 요소를 결합 할 수있는 방법을 몇 가지 파악하려고합니다.가능한 조합의 수를 결정하십시오.
"{Hello|Hi|Hey} {world|earth}{!|.|?}"
각 항목 (파이프로 분리됨)은 각 그룹 ({})에서 임의로 선택되고 단일 문자열로 결합됩니다.
Hello world.
Hi earth?
Hey world.
Hi world?
나는이 추측하고있어이 순열의 유형입니다,하지만 난이 권리를 얻고 있는지 확인하려면 :
그래서 위의 "템플릿"생산할 수 있습니다."n"중첩 된 항목으로 작업하면 정말 좋을 것입니다.
"{{Hello|Hi|Hey} {world|earth}|{Goodbye|farewell} {noobs|n3wbz|n00blets}}"
가능한 경우 대답을 얻으려면 무작위 대행 반복보다 수학/통계 기반 솔루션을 선호합니다.
감사합니다.
정말 간단합니다. 나는 어떤 종류의 순열을 사용할 필요가 없다? (http://en.wikipedia.org/wiki/Permutation) – erikcw
@erikcw 위의 업데이트를 참조하십시오. – Seth
하위 선택 항목 {world | earth} | {Goodbye | Farewell}을 사용하면 구문 분석 알고리즘을 반복적으로 실행하여 하위 섹션 값을 가져 와서 처리를 계속할 수 있습니다. –