Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- using namespace std;
- int main()
- {
- string saaa1,s2aa,asdasd;
- int ** Lasdfas,i,j,m,n;
- getline(cin,saaa1, ' ' );
- getline(cin,s2aa);
- m = saaa1.length();
- n = s2aa.length();
- Lasdfas = new int * [m + 1];
- for(i = 0; i <= m; i++) Lasdfas[i] = new int[n + 1];
- for(i = 0; i <= m; i++) Lasdfas[i][0] = 0;
- for(j = 0; j <= n; j++) Lasdfas[0][j] = 0;
- for(i = 0; i < m; i++)
- for(j = 0; j < n; j++)
- if(saaa1[i] == s2aa[j])
- Lasdfas[i + 1][j + 1] = 1 + Lasdfas[i][j];
- else
- Lasdfas[i + 1][j + 1] = max(Lasdfas[i + 1][j],Lasdfas[i][j + 1]);
- asdasd = ""; i = m - 1; j = n - 1;
- while((i >= 0) && (j >= 0))
- if(saaa1[i] == s2aa[j])
- {
- asdasd = saaa1[i] + asdasd;
- i--; j--;
- }
- else if(Lasdfas[i + 1][j] > Lasdfas[i][j + 1]) j--;
- else i--;
- cout << Lasdfas[m][n];
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement