Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def longestIncreasingSubsequence(s: Seq[Int]): Seq[Int] = {
- require(s.length > 0)
- val N = s.size
- var d = Array.fill(N)(Array[Int](-1))
- d(0)(0) = s(0)
- for( i <- 1 until N) {
- for( j <- 0 until i){
- if( (s(i) > s(j)) && (d(i).size < d(j).size + 1) ){
- d(i) = d(j)
- }
- }
- d(i) = d(i) :+ s(i)
- }
- var max = d(0)
- for (y <- d){
- if(y.size > max.size){
- max = y
- }
- }
- print(max.toSeq.filter(_ >= 0))
- print("\n")
- max.toSeq.filter(_ >= 0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement