#include<bits/stdc++.h>
using namespace std;
int n,m,dp[1145][1145],k,x,y,a[1145],b[1145];char z;
int o(char h){
if(h=='A') return 1;
if(h=='C') return 2;
if(h=='G') return 3;
if(h=='T') return 4;
}
int d[6][6]={
{0,0,0,0,0,0},
{0,5,-1,-2,-1,-3},
{0,-1,5,-3,-2,-4},
{0,-2,-3,5,-2-2},
{0,-1,-2,-2,5,-1},
{0,-3,-4,-2,-1,5}
};
int main(){
cin>>m;
for(int i=1;i<=m;i++){
cin>>z;
a[i]=o(z);
}
cin>>n;
for(int i=1;i<=n;i++){
cin>>z;
b[i]=o(z);
}
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
dp[i][j]=max(dp[i-1][j-1]+d[a[i]][b[j]],max(dp[i-1][j]+d[a[i]][5],dp[i][j-1]+d[5][b[j]]));
}
}
cout<<dp[m][n];
return 0;
}
[1145],k,x,y,a[1145],b[1145];char z; int o(char h){ if(h=='A') return 1; if(h=='C') return 2; if(h=='G') return 3; if(h=='T') return 4; } int d[6][6]={ {0,0,0,0,0,0}, {0,5,-1,-2,-1,-3}, {0,-1,5,-3,-2,-4}, {0,-2,-3,5,-2-2}, {0,-1,-2,-2,5,-1}, {0,-3,-4,-2,-1,5} }; int main(){ cin>>m; for(int i=1;i<=m;i++){ cin>>z; a[i]=o(z); } cin>>n; for(int i=1;i<=n;i++){ cin>>z; b[i]=o(z); } for(int i=1;i<=m;i++){ for(int j=1;j<=n;j++){ dp[i][j]=max(dp[i-1][j-1]+d[a[i]][b[j]],max(dp[i-1][j]+d[a[i]][5],dp[i][j-1]+d[5][b[j]])); } } cout<<dp[m][n]; return 0; }