Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
39
Task/Anagrams/Jsish/anagrams.jsish
Normal file
39
Task/Anagrams/Jsish/anagrams.jsish
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
/* Anagrams, in Jsish */
|
||||
var datafile = 'unixdict.txt';
|
||||
if (console.args[0] == '-more' && Interp.conf('maxArrayList') > 500000)
|
||||
datafile = '/usr/share/dict/words';
|
||||
|
||||
var words = File.read(datafile).split('\n');
|
||||
puts(words.length, 'words');
|
||||
|
||||
var i, item, max = 0, anagrams = {};
|
||||
|
||||
for (i = 0; i < words.length; i += 1) {
|
||||
var key = words[i].split('').sort().join('');
|
||||
if (!anagrams.hasOwnProperty(key)) {
|
||||
anagrams[key] = [];
|
||||
}
|
||||
var count = anagrams[key].push(words[i]);
|
||||
max = Math.max(count, max);
|
||||
}
|
||||
|
||||
// display all arrays that match the maximum length
|
||||
for (item in anagrams) {
|
||||
if (anagrams.hasOwnProperty(item)) {
|
||||
if (anagrams[item].length === max) {
|
||||
puts(anagrams[item].join(' '));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
=!EXPECTSTART!=
|
||||
25108 words
|
||||
abel able bale bela elba
|
||||
caret carte cater crate trace
|
||||
angel angle galen glean lange
|
||||
alger glare lager large regal
|
||||
elan lane lean lena neal
|
||||
evil levi live veil vile
|
||||
=!EXPECTEND!=
|
||||
*/
|
||||
Loading…
Add table
Add a link
Reference in a new issue