Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- val fib: (Int) => List[Int] = {
- case (0) => List(1)
- case (1) => 1 :: fib(0)
- case (x) => (fib(x-1)(0) + fib(x-2)(0)) :: fib(x-1)
- }
- val sort_top: (List[Int], Int) => List[Int] = {
- case (x :: xs, a) if(x < a) => x :: sort_top(xs, a)
- case (x :: xs, a) => sort_top(xs, a)
- }
- val sort_pred: (List[Int], Int => Boolean) => List[Int] = {
- case (x :: xs, p) if(p(x)) => x :: sort_pred(xs, p)
- case (x :: xs, p) => sort_pred(xs, p)
- }
- val main: (Int, Int => Boolean) => List[Int] = {
- case (n, p) => sort_pred(sort_top(fib(n), n), p)
- }
- val chk: (Int, Int => Boolean) => List[Int] = {
- case (x, p) if (p(x)) => (fib(x)(0)) :: chk(x-1, p)
- case (x, p) => chk(x, p)
- }
- case x => (fib(x-1)(0) + fib(x-2)(0)) :: fib(x-1)
- case x => ((x :: fib(x-1)) + (x :: fib(x-2))) :: fib(x-1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement