Submission

Status:
----------

Score: 0

User: Nakornrat

Problemset: Dvaravati-LCS

Language: cpp

Time: 0.002 second

Submitted On: 2025-03-23 17:49:09

#include <bits/stdc++.h>
using namespace std;
#define endl '\n'
int dp[12][12];
int main()
{
    ios::sync_with_stdio(false);cin.tie(0);
    string a, b;cin>>a>>b;
    for(int i=1;i<=11;i++){
        for(int j=1;j<=11;j++){
            if(a[i-1] == b[j-1]){
                dp[i][j] = 1 + dp[i-1][j-1];
            }else{
                dp[i][j] = max(dp[i-1][j], dp[i][j-1]);
            }
        }
    }
    int i=11, j=11;
    string ans = "";
    while(i>=0&&j>=0){
        if(a[i-1]==b[j-1]){
            ans+=a[i-1];
            --i;
            --j;
        }else if(dp[i-1][j]>dp[i][j-1]){
            --i;
        }else{
            --j;
        }
    }
    reverse(ans.begin(), ans.end());
    int sz = ans.size();
    cout<<ans<<endl<<dp[11][11]<<endl;
    if(sz>5)cout<<'y';
    else cout<<'n';
}