为什么只ac了一个?求解答

P1508 Likecloud-吃、吃、吃

`cin>>a[n][m]`是什么鬼
by 404Not_Found @ 2021-08-29 21:54:08


555 手抽写错了 感谢大巨佬
by Freddymo @ 2021-08-29 22:02:09


但还是只ac了两个 可能是我太菜了 就是我太菜了
by Freddymo @ 2021-08-29 22:03:53


```cpp #include <bits/stdc++.h> using namespace std; const int maxn=1001; int main() { int n,m,ans; cin>>m>>n; int a[maxn][maxn]; int dp[maxn][maxn]; for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { cin>>a[i][j]; } } for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { dp[i][j]=max(max(dp[i][j-1],dp[i-1][j]),dp[i-1][j+1])+a[i][j]; ans=max(dp[i][j],ans); } } cout<<ans<<endl; return 0; } ```
by Freddymo @ 2021-08-29 22:08:06


@[Freddymo](/user/550816) 改了一下 ```cpp #include <bits/stdc++.h> using namespace std; const int maxn=1005; int a[maxn][maxn]; int dp[maxn][maxn]; int main() { int n,m; cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>a[i][j]; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { dp[i][j]=max(max(dp[i-1][j],dp[i-1][j-1]),dp[i-1][j+1])+a[i][j]; } } cout<<max(max(dp[n][m/2+1],dp[n][m/2]),dp[n][m/2+2])<<endl; return 0; } ```
by 烟烟罗_ @ 2021-08-29 22:08:16


```cpp #include <bits/stdc++.h> using namespace std; const int maxn=1005; int a[maxn][maxn]; int dp[maxn][maxn]; int main() { int n,m; cin>>m>>n; for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { cin>>a[i][j]; } } for(int i=1;i<=m;i++) { for(int j=1;j<=n;j++) { dp[i][j]=max(max(dp[i-1][j],dp[i-1][j-1]),dp[i-1][j+1])+a[i][j]; } } cout<<max(max(dp[n][m/2+1],dp[n][m/2]),dp[n][m/2+2]); return 0; } ``` 还是没对555 我是大彩笔
by Freddymo @ 2021-08-29 22:13:22


@[烟烟罗_](/user/555426)
by Freddymo @ 2021-08-29 22:13:40


@[Freddymo](/user/550816) 第一个 for 循环的 $n$ 和 $m$ 写反了
by 烟烟罗_ @ 2021-08-29 22:16:10


还有输入
by 烟烟罗_ @ 2021-08-29 22:16:42


@[烟烟罗_](/user/555426) ac了,谢谢大佬
by Freddymo @ 2021-08-29 22:21:27


| 下一页