제출 #1319370

#제출 시각아이디문제언어결과실행 시간메모리
1319370nathlol2Visiting Singapore (NOI20_visitingsingapore)C++20
16 / 100
93 ms98188 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 5005;
int k, n, m, A, B, v[N], s[N], t[N], dp[N][N];

signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    cin >> k >> n >> m >> A >> B;
    for(int i = 1;i<=k;i++) cin >> v[i];
    for(int i = 1;i<=n;i++) cin >> s[i];
    for(int i = 1;i<=m;i++) cin >> t[i];
    for(int i = 1;i<=n;i++){
        for(int j = 1;j<=m;j++){
            dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]);
            if(s[i] == t[j]){
                dp[i][j] = max(dp[i][j], dp[i - 1][j - 1] + v[s[i]]);
            }
        }
    }
    cout << dp[n][m];
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...