Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- ifstream fin("titu.in");
- int x[30], y[30], m, n, a[30][30] ;
- int maxim(int x, int y)
- {
- if(x>y)
- return x;
- else
- return y;
- }
- void citeste()
- {
- fin>>m>>n;
- for(int i=1; i<=m; i++)
- fin>>x[i];
- for(int i=1;i<=n;i++)
- fin>>y[i];
- fin.close();
- }
- void cmls()
- {
- int i, j;
- for(i = 0; i<=m; i++)
- a[i][0] = 0;
- for(j=0; j<=n; j++)
- a[0][i] = 0;
- for(i=1;i<=m;i++)
- for(j=1;j<=n;j++)
- {
- if(x[i]==y[j])
- a[i][j] = a[i-1][j-1]+1;
- else
- a[i][j] = maxim(a[i-1][j], a[i][j-1]);
- }
- cout<<a[m][n];
- }
- int main()
- {
- citeste();
- cmls();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement