Submission
Status:
PPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: robgornpeunpadpairoundnigumaipadnea
Problemset: Dvaravati-LCS
Language: cpp
Time: 0.003 second
Submitted On: 2026-03-16 14:09:59
#include <bits/stdc++.h>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);cin.tie(NULL);
string s1,s2;cin>>s1>>s2;
vector<vector<int>> dp(s1.size()+1,vector<int>(s2.size()+1,0));
string s = "";
for(int i=1;i<=s1.size();i++){
for(int j=1;j<=s2.size();j++){
if(s1[i-1] == s2[j-1]){
dp[i][j] = dp[i-1][j-1] + 1;
}
else dp[i][j] = max(dp[i-1][j],dp[i][j-1]);
}
}
int i = s1.size(),j=s2.size();
while(i>0 && j>0){
if(s1[i-1] ==s2[j-1]){
s+=s1[i-1];i--,j--;
}
else if(dp[i-1][j] > dp[i][j-1]){
i--;
}else j--;
}
reverse(s.begin(),s.end());
cout <<s<<'\n'<< s.size() << '\n';
if(s.size() >= (s1.size()/2))cout<<'y';
else cout<<'n';
}