Na wstępie przepraszam, za wszelkie technicznie niedociągnięcia, ale jestem początkującym adeptem internetowych for i jest to mój pierwszy post - proszę więc o wyrozumiałość.
Zwracam się do Was z prośbą o udzielenie mi pomocy w rozwiązaniu pewnego problemu. Przedstawię najpierw jego szczegóły. Weźmy wszystkie możliwe permutacje zbioru składającego się z trzech elementów spełniających warunek a1>a2>a3. Dla uproszczenia niech wartości tych elementów równają się odpowiednio a1 = 1, a2 = 2, a3 = 3. Możliwych jest zatem sześć permutacji tego zbioru:
Kod: Zaznacz cały
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1
Przykład dla powyższych permutacji:
Kod: Zaznacz cały
1 2 3 0 0 0
1 3 2 0 0 1
2 1 3 0 1 0
2 3 1 0 0 2
3 1 2 0 1 1
3 2 1 0 1 2
Kod: Zaznacz cały
0 0 0 0 0
0 0 1 0 1
0 1 0 1 -1
0 0 2 0 2
0 1 1 1 0
0 1 2 1 1
Kod: Zaznacz cały
n= 2 3 4 5 6 7 8
przyrost
-6 720
-5 120 2400
-4 24 408 5424
-3 6 84 948 10464
-2 2 22 204 1908 18864
-1 1 8 58 444 3708 33984
0 1 5 26 154 1044 8028 69264
1 1 5 26 154 1044 8028 69264
2 1 8 58 444 3708 33984
3 2 22 204 1908 18864
4 6 84 948 10464
5 24 408 5424
6 120 2400
7 720
Określanie co wpisać tej tabeli w kolejnych kolumnach i odpowiednich wierszach wymaga, jak łatwo zauważyć, sprawdzenia n! permutacji co dla n>10 jest mało efektywne (chciałbym to móc robić nawet dla n = 10000 i więcej). Interesuje mnie prostszy sposób określania tych liczb. Dzięki mej „wnikliwości” zauważyłem, że skrajne elementy równe są (n-2)! (1, 1, 2, 6, 24, 120, 720, ...) oraz, że wartości elementów sąsiadujących z nimi „od dołu” (1 – 5, 1 – 8, 2 – 22, 6 – 84, 24 – 408 ...) zachowują się następująco 5 : 1 = 5, 8 : 1 = 8, 22 : 2 = 11, 84 : 6 = 14, 402 : 24 = 17 itd., czyli otrzymujemy ciąg 5,8,11,14,17 co pokazuje, że wyniki tych ilorazów są za każdym razem o 3 większe od poprzednika. Jak widać liczby te rozkładają się symetrycznie względem osi symetrii pomiędzy przyrsotem =0 i 1. Innych własności nie znalazłem.
Czy możecie mi jakoś pomóc?