Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defun read-input(p)
- (cond
- ((null p) nil)
- (T (cons p (read-input (read nil nil))))
- )
- )
- (defun readinput(i)
- (cdr (read-input 1))
- )
- (defun maxdep (lista d maxd)
- (cond
- ((null lista) maxd)
- ((atom (car lista)) (maxdep (cdr lista) d maxd))
- (T (maxdep (cdr lista) d (maxdep (car lista) (+ 1 d) (max (+ 1 d) maxd))))
- )
- )
- (defun listaDlabocina (lista atm dep)
- (cond
- ((null lista) nil)
- ((and (atom (car lista)) (eq atm dep)) (cons (car lista) (listaDlabocina (cdr lista) atm dep)))
- ((listp (car lista))
- (append (listaDlabocina (car lista) (+ 1 atm) dep) (listaDlabocina (cdr lista) atm dep)))
- (T (listaDlabocina (cdr lista) atm dep))
- )
- )
- (defun suma (lista)
- (cond
- ((null lista) 0)
- (T (+ (car lista) (suma (cdr lista))))
- )
- )
- (defun prosek (lista)
- (cond
- ((null lista) 0)
- (T (float (/ (suma lista) (length lista))))
- )
- )
- (defun grupirani (lista dep)
- (cond
- ((eq dep -1) nil)
- (T (cons (listaDlabocina lista 0 dep) (grupirani lista (- dep 1))))
- )
- )
- (defun maxProsek (lista p maxp pom)
- (cond
- ((null lista) pom)
- ((> (prosek (car lista)) maxp) (maxProsek (cdr lista) p (prosek (car lista)) (car lista)))
- (T (maxProsek (cdr lista) p maxp pom))
- )
- )
- (setq dep(maxdep '(1 5 (3 (8) 6 (7 (9)))(4 (11 (20 ((2))) 13)) (7 ((1) (5)))) 0 0))
- (print (reverse (grupirani '(1 5 (3 (8) 6 (7 (9)))(4 (11 (20 ((2))) 13)) (7 ((1) (5)))) dep) ))
- (setq L(reverse(grupirani '(1 5 (3 (8) 6 (7 (9)))(4 (11 (20 ((2))) 13)) (7 ((1) (5)))) dep)))
- (print(maxProsek L 0 0 nil))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement