Hitung kenaikan terpanjang dari array tertentu? arr = [7, 10, 8, 11, 9, 5]
Urutan kenaikan terpanjang dari array tertentu adalah urutan elemen array terpanjang yang diurutkan dalam urutan meningkat.

Untuk menghitung barisan kenaikan terpanjang dari larik tertentu [7, 10, 8, 11, 9, 5], kita dapat menggunakan pendekatan pemrograman dinamis.

Kita dapat mendefinisikan larik `dp` dengan panjang yang sama dengan larik tertentu, dengan `dp[i]` mewakili panjang barisan pertambahan terpanjang yang berakhir pada indeks `i`.

Awalnya, kami menetapkan semua nilai `dp` ke 1, karena urutan kenaikan terpanjang yang berakhir pada indeks mana pun setidaknya adalah 1, yang merupakan elemen itu sendiri.

Kemudian, untuk setiap indeks `i` dari 1 hingga n-1, kita dapat mengulangi semua indeks `j` dari 0 hingga i-1 untuk memeriksa apakah elemen pada indeks `i` lebih besar daripada elemen pada indeks `j` . Jika ya, kita dapat memperbarui `dp[i]` menjadi nilai maksimum saat ini dan `dp[j]+1`.

Terakhir, kita dapat menemukan nilai maksimum dalam larik `dp`, yang mewakili panjang barisan kenaikan terpanjang.

Untuk larik tertentu [7, 10, 8, 11, 9, 5], larik `dp` adalah:

    dp = [1, 2, 1, 3, 2, 1]

Nilai maksimum dalam larik `dp` adalah 3, yang mewakili panjang barisan pertambahan terpanjang.

Untuk menemukan rangkaian berikutnya, kita dapat mengulangi larik `dp` lagi, dan untuk setiap indeks `i` dengan `dp[i] == 3`, kita dapat menambahkan elemen pada indeks `i` ke rangkaian berikutnya, dan lalu lanjutkan iterasi mundur melalui larik `dp`, tambahkan elemen lain yang memiliki nilai `dp` kurang 1 dari indeks saat ini. Ini akan memberi kita kenaikan terpanjang berikutnya [7, 10, 11].