PowerShell을 V3 + V2 +, 127 (110) 70 65 바이트
param($a,$d)($d|?{$a-match$_}|select length -U).count-eq$a.length
(지금은 내 접근 방식이 @xnor와 유사하지만 독립적으로 개발했지만)
배열로 예상 되는 입력 단어 $a및 사전을 가져 옵니다 (아래 예 참조). 전체를 반복 하고 a 를 수행 하여 현재 단어 가 입력 단어에 대한 정규 표현식 인 항목을 가져옵니다 (즉, 현재 단어가 입력 단어의 하위 문자열 임).$d$d$dWhere-Object$_-match$a
우리는 모든 하위 문자열 단어를 수집 Select-Object하여 length매개 변수와 -Unique 제약 조건에 적용합니다. 각 하위 문자열의 고유 길이를 가져옵니다. 예를 들어, 입력 단어에 대해 comb,이 배열 될 것이다 (4,2)위한('comb','om') .
.count결과 배열을 가져 와서 입력 단어와 비교합니다 .length. 같으면 모든 하위 문자열 길이가 사전에 있음을 의미합니다 $TRUE. 그렇지 않으면 적어도 하나가 누락되었습니다 $FALSE. 해당 부울 값은 파이프 라인에 남아 있으며 출력은 암시 적입니다.
NB- v2 +에서 작동 해야 합니다.-in 운영자가 더 이상 존재하지,하지만 난 버전 것을 테스트하지했습니다.
예
PS C:\Tools\Scripts\golfing> .\is-it-a-wordinian.ps1 'stage' (gc .\words.txt)
True
PS C:\Tools\Scripts\golfing> .\is-it-a-wordinian.ps1 'metal' (gc .\words.txt)
True
PS C:\Tools\Scripts\golfing> .\is-it-a-wordinian.ps1 'comb' (gc .\words.txt)
False