M2

33_2a

686
Dane są dodatnia liczba całkowita n i tablica A[1..n] zawierająca n dodatnich liczb całkowitych.

Przeanalizuj działanie zapisanej poniżej funkcji f, której parametry p i q spełniają warunek 1 ≤ p ≤ q ≤ n.

f(p, q):
jeżeli p ≠ q
k ← (q – p + 1) div 2
dla i = 1, 2, ..., k:
zamień(A[p + i – 1], A[q – k + i ])
f(p, p + k – 1)
f(q – k + 1, q)

Uwaga:
• div jest operatorem oznaczającym część całkowitą z dzielenia
• operacja zamień(x, y) zamienia ze sobą wartości zmiennych x i y
• ← jest operatorem przypisania; x ← 2 oznacza, że wartość x staje się 2

Uzupełnij: jaki będzie stan tablicy A (jakie będą wartości elem. tej tablicy) po zakończeniu działania funkcji f wywołanej z parametrami 1, n

A=[2, 3, 4]
A=[1, 2, 3, 4]
A=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] (dla tego przykładu podaj odpowiedź

gracze.txt gry.txt oceny.txt owoce.txt slowa.txt