Submission #691593

#TimeUsernameProblemLanguageResultExecution timeMemory
691593penguin133Visiting Singapore (NOI20_visitingsingapore)C++17
16 / 100
918 ms197332 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pi pair<int, int> #define pii pair<int, pi> #define fi first #define se second #ifdef _WIN32 #define getchar_unlocked _getchar_nolock #endif int S[5005], T[5005], V[5005], memo[5005][5005], n, m, k, a, b; int dp(int x, int y){ if(x == n + 1 || y == m + 1)return 0; if(memo[x][y] != -1)return memo[x][y]; int res = max(dp(x+1, y), dp(x, y+1)); if(S[x] == T[y])res = max(res, dp(x+1, y+1) + V[S[x]]); return memo[x][y] = res; } void solve(){ 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]; memset(memo, -1, sizeof(memo)); cout << dp(1, 1) << '\n'; } main(){ ios::sync_with_stdio(0);cin.tie(0); int tc = 1; //cin >> tc; for(int tc1=1;tc1<=tc;tc1++){ // cout << "Case #" << tc1 << ": "; solve(); } }

Compilation message (stderr)

VisitingSingapore.cpp:32:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   32 | main(){
      | ^~~~
#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...