Darmowe konto pozwoli wrócić do niego później.
Polecenie
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.
Specyfikacja:
Dane:
Darmowe konto pozwoli wrócić do niego później.
A[1..n], B[1..n] – n-elementowe tablice liczb całkowitych
k – nieujemna liczba całkowita mniejsza niż n
Wynik:
PRAWDA, jeśli tablice A i B są k-podobne dla podanego parametru k
FAŁSZ w przeciwnym przypadku.
Funkcja powinna sprawdzić, czy A[1..k] = B[n-k+1..n] i A[k+1..n] = B[1..n-k].
Pseudokod:
funkcja czy_k_podobne(n, A, B, k):
dla i od 1 do k wykonuj
jeśli A[i] ≠ B[n-k+i] zwróć FAŁSZ
dla i od k+1 do n wykonuj
jeśli A[i] ≠ B[i-k] zwróć FAŁSZ
zwróć PRAWDA
Alternatywnie: porównanie dwóch podsekwencji za pomocą pętli lub rekurencji.
algorytm poprawnie sprawdza oba warunku k-podobieństwa (A[1..k] = B[n-k+1..n] oraz A[k+1..n] = B[1..n-k]).
algorytm zawiera logikę porównania sekwencji, ale zawiera błędy w indeksowaniu lub logice warunkowej; lub brakuje pełnego sprawdzenia obu warunków.
szkic algorytmu, który częściowo rozwiązuje problem, np. sprawdza tylko jeden z warunków lub ma istotne błędy w strukturze.
brak algorytmu, algorytm całkowicie błędny lub niespełniający specyfikacji.
Ocena według schematu punktowania CKE, zwykle w 15–30 s
Dowiedz się, ile punktów naprawdę zdobywasz. Zrób zdjęcie kartki albo wklej odpowiedź: Maturownik+ porówna ją ze schematem punktowania, policzy punkty i wytłumaczy, gdzie i dlaczego je tracisz.