Run ID | Author | Problem | Lang | Verdict | Score | Time | Memory | Code Length | Submit Time |
---|---|---|---|---|---|---|---|---|---|
144193 | 吴悠 | 最优选课 | C++ | Wrong Answer | 0 | 7 MS | 328 KB | 528 | 2024-04-21 09:42:15 |
#include<iostream> using namespace std; int w[101][101],dp[101][101]; int main(){ while(true){ fill(dp[0],dp[0]+100*100,0); int n,m; cin>>n>>m; if(n==0 && m==0){ exit(0); } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>w[i][j]; } } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ dp[i][j]=dp[i-1][j]; for(int k=1;k<=m;k++){ if(j>=w[i][k]){ dp[i][j]=max(dp[i-1][j]+w[i][k],dp[i][j]); } } } } cout<<dp[n][m]<<endl; } return 0; }