GÖREV
Amaç herhangi bir iki boyutlu listeyi 45 derece döndüren bir program yazmaktır, listeyi döndürmeden önce bunu 7 * 45'e (bir kerede) kadar yapabilmelidir. Liste mutlaka kare veya dikdörtgen olmayacak. Cevabınıza örnekler için çıktı eklemelisiniz. Ayrıca örneklerde olmayan ... daireler, üçgenler vb. Olmayan durumlarda da çalışmalıdır. Her şeyi yapmak için önceden var olan bir işlevi kullanamazsınız.
Tüm listeler en az bir simetri eksenine (N, S, E, W) sahip olacaktır. Tüm alt listelerin merkez-hizalı olduğu varsayılmalıdır. Tek sıralı listeler, düzgün şekilde hizalanması için sola kaydırılır. Bir alt listenin ortasındaki boşluklar için örnek 4'e bakınız.
GİRİŞ
Programınız l
listeyi içeren bir değişken n
ve listenin döndürüleceği miktarı belirten bir değişken kullanacak (n * 45) ( n
her zaman 7'den küçük olacak ve 0 olabilir). l
Basılabilir herhangi bir veri türünün alt listelerini içermesi gerekir (ondalık, Liste, int, String [] .. vb.), Ancak alt listeler bir seferde yalnızca bir veri türü içerecektir.
Konsol girişini kabul etmeniz veya stdin kullanmanız gerekmez. Test değerlerini belirterek hatları l
ve n
karakter sayısına dahil edilmez, ancak gönderilen kodu dahil edilmelidir.
ÇIKTI
Programınız listeyi doğru yönde yazdırmalıdır, istenirse listeleri doldurmak için NIL kullanılabilir, ancak doldurma gerekli değildir (yine de doldurulmuşlarsa gülen yüz alırsınız). Alt listelerin, örneklerde olduğu gibi yeni satırlarla girintilmesi veya ayrılması gerekmez.
ÖRNEKLER
1
IN
l=
[[0 , 1 , 2],
[3 , 4 , 5],
[6 , 7 , 8]]
n=1
OUT
[ [0],
[3 , 1],
[6 , 4 , 2],
[7 , 5],
[8] ]
2
IN
l=
[[a , b , c , d],
[e , f , g , h]]
n=2
OUT
[[e , a],
[f , b],
[c , g],
[h , d]]
3
IN
l=
[[A , B , C , D , E , F],
[G , H , I , J],
[K , L],
[0 , 8],
[M , N],
[O , P , Q , R],
[S , T , U , V , W , X]]
n=7
OUT
[ [F],
[E],
[D , J],
[C , I],
[B , H , L],
[A , G , K , 8],
[0 , N , R , X],
[M , Q , W],
[P , V],
[O , U],
[T],
[U] ]
4
IN
l=
[[9 , 8 , 7 , 6],
[5],
[4 , 3 , 2 , 1],
[0] ]
n=3
OUT
[ [0 , 4],
[3],
[2 , 5 , 9],
[1 ,NIL, 8],
[7],
[6], ]
5
IN
l=
[ [Q],
[X ,NIL, Y],
[Z] ]
n=2
OUT
[ [X],
[Z ,NIL, Q],
[Y] ]
n
zamanlarını n
45 ° döndürmemizi gerçekten istiyor musunuz ? Soruyorum çünkü yedi adet 45 ° döndürme uygulayarak örnek 3'ün sonucunu elde etmeyeceğimden eminim.