펄 78 바이트
map{push$_[keys{map{$_,1}/./g}]||=[],$_}split for<>;print"$_ $#_
"for@{$_[-1]}
제한 사항 해석 입력을 읽고 구문 분석하는 명령 행 옵션이 허용되지 않음을 의미하기 위해 "코드로 텍스트 문서를 읽어야합니다" 를 해석하십시오. 아래의 PHP 솔루션과 마찬가지로 문자 10과 32 만 단어 구분 기호로 간주됩니다. 입력과 출력도 같은 방식으로 수행됩니다.
PHP 128 바이트
<?foreach(split(~߃õ,fread(STDIN,1e6))as$s){$w[count(count_chars($s,1))][]=$s;}krsort($w)?><?=join($f=~ß.key($w).~õ,pos($w)),$f;
단어 분리 문자로 간주되는 유일한 문자는 문자 10과 문자 32입니다. 천공을 포함한 나머지 문자는 단어의 일부로 간주됩니다.
여기에는 따옴표를 저장하는 몇 가지 이진 문자가 포함되어 있지만 제대로 작동하려면 ANSI 인코딩으로 저장해야합니다. 또는이 버전을 사용할 수 있는데, 이는 3 바이트 더 무겁습니다.
<?foreach(split(' |
',fread(STDIN,1e6))as$s){$w[count(count_chars($s,1))][]=$s;}krsort($w)?><?=join($f=' '.key($w).'
',pos($w)),$f;
샘플 I / O :
입력 1 :
It was the best of times, it was the worst of times, it was the age of wisdom,
it was the age of foolishness, it was the epoch of belief, it was the epoch of
incredulity, it was the season of Light, it was the season of Darkness, it was
the spring of hope, it was the winter of despair, we had everything before us,
we had nothing before us, we were all going direct to Heaven, we were all going
direct the other way - in short, the period was so far like the present period,
that some of its noisiest authorities insisted on its being received, for good
or for evil, in the superlative degree of comparison only.
출력 1 :
$ php most-unique.php < input1.dat
incredulity, 11
입력 2 :
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec mollis, nisl sit
amet consequat fringilla, justo risus iaculis justo, vel ullamcorper dui tellus
ut enim. Suspendisse lectus risus, molestie sed volutpat nec, eleifend vitae
ligula. Nulla porttitor elit vel augue pretium cursus. Donec in turpis lectus.
Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia
Curae; Quisque a lorem eu turpis viverra sodales. Pellentesque justo arcu,
venenatis nec hendrerit a, molestie vitae augue.
출력 2 :
$ php most-unique.php < input2.dat
consequat 9
ullamcorper 9
Vestibulum 9