 - (defun abc (lst n / lst1 aa ii bb nlst)
- (defun AppendAll (lst)
- (while (vl-some 'listp lst)
- (setq lst (mapcar '(lambda (x) (if (listp x) x (list x)))lst)
- lst (apply 'append lst)
- )
- )
- lst
- )
- (setq aa (nth (1- n) (AppendAll lst))
- nlst '()
- ii 0
- )
- (while (setq bb (car lst))
- (setq lst (cdr lst))
- (cond ((and (/= (type bb) 'LIST) (equal bb aa))
- (setq nlst (cons ii nlst)
- ii -1
- )
- )
- ((and (= (type bb) 'LIST) (member aa (AppendAll bb)))
- (setq nlst (cons ii nlst)
- lst bb
- ii -1
- )
- )
- )
- (setq ii (1+ ii))
- )
- (reverse nlst)
- )
|