Zadanie 1. Podobne tablice (2020)

Niech n będzie dodatnią liczbą całkowitą, a A[1..n] i B[1..n] będą n-elementowymi tablicami liczb całkowitych. Dla nieujemnej liczby całkowitej k, gdzie k < n, powiemy, że tablice A i B są k-podobne, gdy
A[1..k] = B[n-k+1..n] oraz
A[k+1..n] = B[1..n-k]. Liczbę k nazywamy świadectwem podobieństwa.
Uwaga: dla k = 0 przyjmujemy, że prawdziwe jest A[1..0]=B[n+1..n]

Zadanie 1.1 (1 x 1pkt)
Uzupełnij tabelę – wpisz w pustych kratkach odpowiednie wartości. W wierszu piątym i siódmym wpisz literę P - PRAWDA, jeśli tablice A i B są k-podobne przy podanym k, albo F – FAŁSZ w przeciwnym przypadku. W wierszu szóstym wpisz takie k, dla którego tablice A i B są k-podobne.
 n  Tab A[]  Tab. B[]  k  odp. 
3[5, 7, 9][5, 7, 9]0P
5[4, 7, 1, 4, 5][1, 4, 5, 4, 7]2P
5[10, 9, 12, 10, 9][10, 10, 9, 9, 12]3F
5[3, 6, 5, 1, 8][5, 1, 8, 3, 6]4F
5[1, 2, 3, 4, 5][3, 4, 5, 1, 2]2
9[1,1,1,1,3,1,1,1,1][3,1,1,1,1,1,1,1,1]P
6[4, 2, 4, 4, 2, 6][4, 4, 2, 6, 4, 2]1
odp:
P
4
F

Zadanie 1.2 (3 pkt)
Zapisz w wybranej przez siebie notacji (w postaci pseudokodu, listy kroków lub w wybranym języku programowania) funkcję czy_k_podobne(n, A, B, k), gdzie A i B są n-elementowymi tablicami liczb całkowitych. Wynikiem funkcji jest PRAWDA, jeśli tablice A i B są k-podobne dla zadanego parametru k, natomiast FAŁSZ – w przeciwnym przypadku.

Uwaga: w zapisie możesz wykorzystać tylko operacje arytmetyczne (dodawanie, odejmowanie, mnożenie, dzielenie, dzielenie całkowite, reszta z dzielenia), odwoływanie się do pojedynczych elementów tablicy, porównywanie liczb, instrukcje sterujące i przypisania do zmiennych lub samodzielnie napisane funkcje zawierające wyżej wymienione operacje.

odp:
patrz film z omówieniem

Zadanie 1.3(2 pkt)
Zapisz w wybranej przez siebie notacji funkcję czy_podobne(n, A, B), która dla danych tablic A i B daje odpowiedź PRAWDA, jeśli istnieje takie k, dla którego tablice A i B są k-podobne, natomiast FAŁSZ – w przeciwnym przypadku.

Uwaga: w zapisie możesz skorzystać jedynie z operacji wymienionych w zadaniu 1.2. oraz funkcji czy_k_podobne(n, A, B, k) opisanej w zadaniu 1.2.

odp:
patrz film z omówieniem