Wskazówka:
Podobnie jak w algorytmie A analizowanym w zadaniu 2 dwie pierwsze pętle tworzą reprezentacje zbiorów liter ze słów X i Y w tablicach Czy_x i Czy_y. Dokładniej, po wykonaniu
pętli
dx ← dlugosc(X)
dla i = 1,2,…,dx wykonuj
lit ← X[i]
Czy_x[kod(lit)] ← prawda
dy ← dlugosc(Y)
dla i = 1,2,…,dy wykonuj
lit ← Y[i]
Czy_y[kod(lit)] ← prawda
zachodzą warunki: Czy_x[i] = prawda wtedy i tylko wtedy, gdy litera o kodzie i występuje
w słowie X, Czy_y[i] = prawda wtedy i tylko wtedy, gdy litera o kodzie i występuje w słowie Y.
Definicje k-podrzędności i podrzędności możemy wówczas wyrazić w odniesieniu do X i Y
w następujący sposób:
a) X nie jest podrzędne względem Y, gdy dla pewnego i ∈ [1,10] zachodzi: Czy_y[i] = fałsz
oraz Czy_x[i] = prawda
b) X jest k-podrzędne względem Y, gdy warunek Czy_y[i] = prawda oraz Czy_x[i] = fałsz
zachodzi dla k różnych wartości i ∈ {1,2,…,10} oraz nie zachodzi warunek a)
Oznacza to, że ostatni fragment programu należy uzupełnić w następujący sposób:
jeżeli Czy_y[i] = prawda oraz Czy_x[i] = fałsz
k← k+1
jeżeli Czy_y[i] = fałsz oraz Czy_x[i] = prawda