Şartname
Bu zorluğu belirtmek kolaydır: girdiniz boş olmayan bir negatif tamsayı dizisidir ve göreviniz bunu olabildiğince az artan alt dizilere bölmektir. Daha resmi olarak, girdi dizisi ise A, çıktı şu şekilde diziler dizisidir B:
- Her diziler ayrık (mutlaka bitişik olmayan) alt dizilere
Bbir bölüm oluştururA. Endüktif olarak, bu, yaBtekli dizi içerenAya da ilk elemanının bir alt dizisiBolduğuAve geri kalanınınAda bu alt dizinin kaldırıldığı bir bölümü oluşturduğu anlamına gelir. - İçindeki her dizi
Bartıyor (kesinlikle değil). - İçindeki dizi sayısı
Bminimumdur.
Hem giriş hem de çıkış, dilinizin yerel dizi biçiminde alınabilir. Birkaç doğru çıkış olabileceğini unutmayın.
Misal
Giriş dizisini düşünün A = [1,2,1,2,5,4,7,1]. Bir olası çıktı B = [[1],[1,2,4,7],[1,2,5]]. Bölüm durumu bu şemadan açıkça görülmektedir:
A 1 2 1 2 5 4 7 1
B[0] 1
B[1] 1 2 4 7
B[2] 1 2 5
Ayrıca, her dizi Bartıyor. Son olarak, Aartan iki alt diziye bölünemez, bu nedenle uzunluğu Bda minimumdur. Böylece geçerli bir çıktıdır.
Kurallar ve puanlama
Bir işlev veya tam bir program yazabilirsiniz. En düşük bayt sayısı kazanır ve standart boşluklara izin verilmez. Zaman sınırlaması yoktur, ancak göndermeden önce çözümünüzü tüm test senaryolarında değerlendirmelisiniz.
Test senaryoları
Yalnızca bir olası çıktı gösterilir, ancak birkaç geçerli seçenek olabilir. Özellikle, sonuçtaki dizilerin sırası önemli değildir (ancak her bir dizi artan sırada olmalıdır).
[0] -> [[0]]
[3,5,8] -> [[3,5,8]]
[2,2,2,2] -> [[2,2,2,2]]
[1154,1012,976,845] -> [[845],[976],[1012],[1154]]
[6,32,1,2,34,8] -> [[1,2,8],[6,32,34]]
[1,12,1,12,1,13] -> [[1,1,1,13],[12,12]]
[6,4,6,13,18,0,3] -> [[0,3],[4,6,13,18],[6]]
[1,2,3,2,3,4,7,1] -> [[1,1],[2,2,3,4,7],[3]]
[0,9,2,7,4,5,6,3,8] -> [[0,2,3,8],[4,5,6],[7],[9]]
[7,1,17,15,17,2,15,1,6] -> [[1,1,6],[2,15],[7,15,17],[17]]
[4,12,2,10,15,2,2,19,16,12] -> [[2,2,2,12],[4,10,15,16],[12,19]]
[10,13,9,2,11,1,10,17,19,1] -> [[1,1],[2,10,17,19],[9,11],[10,13]]
[3,7,3,8,14,16,19,15,16,2] -> [[2],[3,3,8,14,15,16],[7,16,19]]
[15,5,13,13,15,9,4,2,2,17] -> [[2,2,17],[4],[5,9],[13,13,15],[15]]
B, umarım şimdi daha açıktırlar.
[0,5,2,0] -> [[0,5],[0,2]], (ör. Her birini bir kez kullanmak yerine ilk sıfırı geri dönüştürme) gibi çözümlere izin veriyor gibi görünüyor . Bu kasıtlı mı?