Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
#include
using namespace std; int main() { int n, m, a[50][50], dp[50][50] = {}; cin >> n >> m; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) cin >> a[i][j]; dp[0][0] = a[0][0]; for (int i = 1; i < n; i++) dp[0][i] = a[0][i] + dp[0][i-1]; for (int i = 1; i < m; i++) dp[i][0] = a[i][0] + dp[i-1][0]; for (int i = 1; i < n; i++) for (int j = 1; j < m; j++) dp[i][j] = a[i][j] + max(dp[i-1][j], dp[i][j-1]); cout << dp[n-1][m-1] << endl; vector
> result; int i = m - 1, j = n - 1; result.push_back({i+1, j+1}); while (i != 0 || j != 0) { if (i > 0 && dp[i][j] == dp[i-1][j] + a[i][j]) { i--; } else { j--; } result.push_back({i+1, j+1}); } reverse(result.begin(), result.end()); for(int i=0; i
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)