Madhu <enometh@meer.net> writes:
This becomes the Longest Increasing Subsequence Problem
Still not quite, the subsequence is supposed to be consecutive, not just increasing. Like "abcde" not "acegi".
((3 "xyz" "wxy" "uvw" "tuv" "stu" "rst" "qrs" "pqr" "opq" "nop" "mno" "lmn""klm" "jkl" "ijk" "hij" "ghi" "fgh" "efg" "def" "cde" "bcd" "abc")
On Sun, 16 Feb 2025 15:43:20 +0000, Madhu wrote:
Using a suitable implementaion in a stupid way:
(defun lca (string)
(map 'string 'code-char (lca::longest-inc-seq (map 'list 'char-code string))))
and running it on to extract into a hashtable with the keys as lcas
(hash-table-count $h2)
;; => 20437
(gethash "abcde" $h2)
("oxylabracidae" "cerambycidae" "bambocciade" "amoebicide" "ambuscade" "absconded" "aborticide")
(sort (mapcar (lambda (x) (cons (car x) (length (cdr x))))
(group2 (hash-keys $h2) :test #'= :key #'length))
#'< :key #'car)
;; "length of lca . number of words"
((2 . 241) (3 . 1596) (4 . 4833) (5 . 7024) (6 . 4961) (7 . 1545) (8 .
217)
(9 . 19) (10 . 1))
____________
(9 . 19) (10 . 1))
wow.... I'd love to know what these Longest words are!
who is the (sole) Grand winner?
FWIW My code is pretty clunky, somehow TIME SBCL says it conses 0 bytes
when I run it on individual words without interning although when I'm explicitly manipulating plists and arrays.
* HenHanna <507d06f8062ea2f4dc1b226979b23021@www.novabbs.com> :
Wrote on Sun, 16 Feb 2025 18:33:58 +0000:
On Sun, 16 Feb 2025 15:43:20 +0000, Madhu wrote:
[Badly proofread, sorry. The letters "LCA" are meaningless in this
context. it could be LIS (longest increasing subsequence)]
Using a suitable implementaion in a stupid way:
(defun lca (string)
(map 'string 'code-char (lca::longest-inc-seq (map 'list 'char-code
string))))
and running it on to extract into a hashtable with the keys as lcas
(hash-table-count $h2)
;; => 20437
(gethash "abcde" $h2)
("oxylabracidae" "cerambycidae" "bambocciade" "amoebicide" "ambuscade"
"absconded" "aborticide")
(sort (mapcar (lambda (x) (cons (car x) (length (cdr x))))
(group2 (hash-keys $h2) :test #'= :key #'length))
#'< :key #'car)
;; "length of lca . number of words"
((2 . 241) (3 . 1596) (4 . 4833) (5 . 7024) (6 . 4961) (7 . 1545) (8 .
217)
(9 . 19) (10 . 1))
____________
(9 . 19) (10 . 1))
wow.... I'd love to know what these Longest words are!
who is the (sole) Grand winner?
This historgram was of just the keys, or the subsequences, not the
words. The longest increasing subsequence was of length 10,
"achilopsty" and the word was
(gethash "achilopsty" $h2)
;; => ("tarsochiloplasty"), T
#||
lrwxrwxrwx 1 root root 4 Dec 28 2020 /usr/share/dict/words -> web2 -rw-r--r-- 1 root root 2486824 Oct 21 2000 /usr/share/dict/web2
||#
tarsochiloplasty
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 65 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 06:18:32 |
| Calls: | 862 |
| Files: | 1,311 |
| D/L today: |
921 files (14,318M bytes) |
| Messages: | 264,699 |