Submission #820995

#TimeUsernameProblemLanguageResultExecution timeMemory
820995boris_mihovSightseeing in Kyoto (JOI22_kyoto)C++17
10 / 100
9 ms8240 KiB
#include <algorithm> #include <iostream> #include <numeric> #include <cassert> #include <vector> #include <queue> #include <stack> #include <set> #include <map> typedef long long llong; const int MAXN = 1000 + 10; const llong INF = 1e18; const int INTINF = 1e9; int n, m; int a[MAXN]; int b[MAXN]; llong dp[MAXN][MAXN]; void solve() { dp[n][m] = 0; for (int i = n ; i >= 1 ; --i) { for (int j = m - (i == n) ; j >= 1 ; --j) { dp[i][j] = INF; if (j < m) dp[i][j] = std::min(dp[i][j], dp[i][j + 1] + a[i]); if (i < n) dp[i][j] = std::min(dp[i][j], dp[i + 1][j] + b[j]);; } } std::cout << dp[1][1] << '\n'; } void input() { std::cin >> n >> m; for (int i = 1 ; i <= n ; ++i) { std::cin >> a[i]; } for (int i = 1 ; i <= m ; ++i) { std::cin >> b[i]; } } void fastIOI() { std::ios_base :: sync_with_stdio(0); std::cout.tie(nullptr); std::cin.tie(nullptr); } int main() { fastIOI(); input(); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...