https://ruclips.ru/ru/watch/5CGCzpKHrPs/longest-common-subsequence-using-dynamic-programming