Language: C++

    #include<bits/stdc++.h>  
    using namespace std; 
    vector<vector<int> > L;
    int max(int a, int b){
      return a>b ? a:b ;
    }
    string LCS(string S1, string S2){
      for(int i=0;i<strlen(S1);i++)
        for(int j=0;j<strlen(S2);j++){
      		if(i==0 || j==0) L[i][j] = 0;
          	else{
      			if(S1[i] == S2[j]) L[i][j] = L[i-1][j-1] + 1;
      			else L[i][j] = max(L[i][j-1],L[i-1][j]);
            }
        }
      	string ansString;
      	for(int i=strlen(S1)-1, j=strlen(S2)-1 ; i>=0 && j>=0 ;)
        {
          if(L[i][j] == 0) break;
          if(L[i][j] != max(L[i-1][j],L[i][j-1])){ ansString.append(S1[i]);
                                                  i--;
                                                  j--;
                                                 }
          else if(L[i][j] == L[i-1][j]) i--;
          else if(L[i][j] == L[i][j-1]) j--;
        }
      
      	reverse(ansString.begin(),ansString.end());
    	retutrn ansString;
    }
    int main()
    {
      string s,t;
      string commonSeq = LCS(s,t);
      printf("%s\n",commonSeq);
    }

Compiler output:
a.cc: In function 'std::string LCS(std::string, std::string)':
a.cc:8:28: error: cannot convert 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'const char*'
    8 |       for(int i=0;i<strlen(S1);i++)
      |                            ^~
      |                            |
      |                            std::string {aka std::__cxx11::basic_string<char>}
In file included from /usr/include/c++/14/cstring:43,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:121,
                 from a.cc:1:
/usr/include/string.h:407:35: note:   initializing argument 1 of 'size_t strlen(const char*)'
  407 | extern size_t strlen (const char *__s)
      |                       ~~~~~~~~~~~~^~~
a.cc:9:30: error: cannot convert 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'const char*'
    9 |         for(int j=0;j<strlen(S2);j++){
      |                              ^~
      |                              |
      |                              std::string {aka std::__cxx11::basic_string<char>}
/usr/include/string.h:407:35: note:   initializing argument 1 of 'size_t strlen(const char*)'
  407 | extern size_t strlen (const char *__s)
      |                       ~~~~~~~~~~~~^~~
a.cc:17:26: error: cannot convert 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'const char*'
   17 |         for(int i=strlen(S1)-1, j=strlen(S2)-1 ; i>=0 && j>=0 ;)
      |                          ^~
      |                          |
      |                          std::string {aka std::__cxx11::basic_string<char>}
/usr/include/string.h:407:35: note:   initializing argument 1 of 'size_t strlen(const char*)'
  407 | extern size_t strlen (const char *__s)
      |                       ~~~~~~~~~~~~^~~
a.cc:17:58: error: 'j' was not declared in this scope
   17 |         for(int i=strlen(S1)-1, j=strlen(S2)-1 ; i>=0 && j>=0 ;)
      |                                                          ^
a.cc:20:68: error: no matching function for call to 'std::__cxx11::basic_string<char>::append(__gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type&)'
   20 |           if(L[i][j] != max(L[i-1][j],L[i][j-1])){ ansString.append(S1[i]);
      |                                                    ~~~~~~~~~~~~~~~~^~~~~~~
In file included from /usr/include/c++/14/string:54,
                 from /usr/include/c++/14/bitset:52,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:52:
/usr/include/c++/14/bits/basic_string.h:1480:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]' (near match)
 1480 |       append(const _CharT* __s)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1480:7: note:   conversion of argument 1 would be ill-formed:
/usr/include/c++/14/bits/basic_string.h:1480:7: error: invalid conversion from '__gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type' {aka 'char'} to 'const char*' [-fpermissive]
 1480 |       append(const _CharT* __s)
      |       ^~~~~~
      |       |
      |       __gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type {aka char}
/usr/include/c++/14/bits/basic_string.h:1529:9: note: candidate: 'template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(_InputIterator, _InputIterator) [with <template-parameter-2-2> = _InputIterator; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
 1529 |         append(_InputIterator __first, _InputIterator __last)
      |         ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1529:9: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/14/bits/basic_string.h:1541:9: note: candidate: 'template<class _Tp> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_If_sv<_Tp, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const _Tp&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
 1541 |         append(const _Tp& __svt)
      |         ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1541:9: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/14/bits/stl_pair.h:60,
                 from /usr/include/c++/14/bits/stl_algobase.h:64,
                 from /usr/include/c++/14/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:51:
/usr/include/c++/14/type_traits: In substitution of 'template<bool _Cond, class _Tp> using std::enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = std::__cxx11::basic_string<char>&]':
/usr/include/c++/14/bits/basic_string.h:149:8:   required by substitution of 'template<class _CharT, class _Traits, class _Alloc> template<class _Tp, class _Res> using std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_If_sv = std::enable_if_t<((bool)std::__and_<std::is_convertible<const _Tp&, std::basic_string_view<_CharT, _Traits> >, std::__not_<std::is_convertible<const _Tp*, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>*> >, std::__not_<std::is_convertible<const _Tp&, const _CharT*> > >::value), _Res> [with _Tp = char; _Res = std::__cxx11::basic_string<char>&; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
  149 |         using _If_sv = enable_if_t<
      |               ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1541:9:   required by substitution of 'template<class _Tp> std::__cxx11::basic_string<char>::_If_sv<_Tp, std::__cxx11::basic_string<char>&> std::__cxx11::basic_string<char>::append(const _Tp&) [with _Tp = char]'
 1541 |         append(const _Tp& __svt)
      |         ^~~~~~
a.cc:20:68:   required from here
   20 |           if(L[i][j] != max(L[i-1][j],L[i][j-1])){ ansString.append(S1[i]);
      |                                                    ~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/c++/14/type_traits:2711:11: error: no type named 'type' in 'struct std::enable_if<false, std::__cxx11::basic_string<char>&>'
 2711 |     using enable_if_t = typename enable_if<_Cond, _Tp>::type;
      |           ^~~~~~~~~~~
/usr/include/c++/14/bits/basic_string.h:1557:9: note: candidate: 'template<class _Tp> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_If_sv<_Tp, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const _Tp&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
 1557 |         append(const _Tp& __svt, size_type __pos, size_type __n = npos)
      |         ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1557:9: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/14/bits/basic_string.h:1435:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
 1435 |       append(const basic_string& __str)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1435:34: note:   no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type' {aka 'char'} to 'const std::__cxx11::basic_string<char>&'
 1435 |       append(const basic_string& __str)
      |              ~~~~~~~~~~~~~~~~~~~~^~~~~
/usr/include/c++/14/bits/basic_string.h:1453:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, size_type, size_type) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; size_type = long unsigned int]'
 1453 |       append(const basic_string& __str, size_type __pos, size_type __n = npos)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1453:7: note:   candidate expects 3 arguments, 1 provided
/usr/include/c++/14/bits/basic_string.h:1466:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const _CharT*, size_type) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; size_type = long unsigned int]'
 1466 |       append(const _CharT* __s, size_type __n)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1466:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/14/bits/basic_string.h:1498:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(size_type, _CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; size_type = long unsigned int]'
 1498 |       append(size_type __n, _CharT __c)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1498:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/14/bits/basic_string.h:1509:7: note: candidate: 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
 1509 |       append(initializer_list<_CharT> __l)
      |       ^~~~~~
/usr/include/c++/14/bits/basic_string.h:1509:39: note:   no known conversion for argument 1 from '__gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type' {aka 'char'} to 'std::initializer_list<char>'
 1509 |       append(initializer_list<_CharT> __l)
      |              ~~~~~~~~~~~~~~~~~~~~~~~~~^~~
a.cc:29:9: error: 'retutrn' was not declared in this scope
   29 |         retutrn ansString;
      |         ^~~~~~~
a.cc:30:5: warning: no return statement in function returning non-void [-Wreturn-type]
   30 |     }
      |     ^