Bu zorluk zaten zaten droportu açıklar. Ancak, biraz tembelim ve gerçekten sadece dizimin öncekinden biraz daha fazla sıralanmasına ihtiyacım var, tüm yol boyunca sıralanması gerekmiyor .
Bırakma Sıralaması'nda, her elemanı ondan önceki herhangi bir öğeden daha az bırakırız. Lazy Drop Sort'da, her bir öğeyi kesinlikle öncekinden daha az düşürüyoruz .
İşte bir örnek. Aşağıdaki diziyi göz önünde bulundurun:
8 6 9 9 7 2 3 8 1 3
Her elemanı bir öncekinden daha az işaretleyelim.
8 6 9 9 7 2 3 8 1 3
^ ^ ^ ^
Ne 3
işaretlendiğine ya da son işaretine dikkat edin 8
. Hepsi solundaki tek elemandan daha büyük.
Algoritmayı tamamlayarak, işaretlenmiş elemanları kaldırarak alırız:
8 9 9 3 8 3
Bu temelde daha sıralı görünüyor. Tür. Tembelim.
Göreviniz, zaten düşülmüş olabileceğiniz gibi, bu algoritmayı uygulamaktır.
Giriş, 1 ile 9 arasında en az 1 pozitif tam sayı dizisidir, böylece bir basamak haneyi de alabilirsiniz.
Bu kod golf , en az bayt kazanıyor!
Ek test durumları:
1
1
1 2 3
1 2 3
5 3 1
5
1 2 3 2 1
1 2 3
1 1 1 9 9 9 1 1 1 9 9 9 1 1 1
1 1 1 9 9 9 1 1 9 9 9 1 1
9 9
9 9
5 2 4 2 3
5 4 3