Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int main()
- {
- int n, m;
- cin >> n >> m;
- vector<vector<int>> a(n, vector<int>(m, 0));
- vector<vector<int>> dp(n+1, vector<int>(m+1, 0));
- for(int i = 0; i < n; i++)
- {
- for(int j = 0; j < m; j++)
- {
- cin >> a[i][j];
- }
- }
- dp[1][1] = a[0][0];
- for(int i = 1; i < n + 1; i++)
- {
- for(int j = 1; j < m + 1; j++)
- {
- if(j != 1 and i != 1)
- {
- dp[i][j] = min(dp[i-1][j], dp[i][j-1]) + a[i-1][j-1];
- }
- else if(j == 1 and i != 1)
- {
- dp[i][j] = dp[i-1][j] + a[i-1][j-1];
- }
- else if(j != 1 and i == 1)
- {
- dp[i][j] = dp[i][j-1] + a[i-1][j-1];
- }
- }
- }
- cout << dp[n][m];
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement