RE求解
原题链接:7931.传球游戏2024-07-28 18:27:35
发布于:广东
找不到问题,本蒟蒻找大佬帮忙寻找问题
#include<bits/stdc++.h>
using namespace std;
int dp[35][35];
int main(){
int n,m;
cin >> n >> m;
for(int i = 1;i <= m;++i){
for(int j = 1;j <= n;++j){
int l = j-1, r = j+1;
if(l == 0){
l = n;
}
if(r > n){
r = 1;
}
dp[i][j] = dp[i-1][l] + dp[i-1][r];
}
}
cout << dp[m][1];
return 0;
}
全部评论 4
dp开小了
4天前 来自 云南
0#include <bits/stdc++.h> using namespace std; long long a[105][105] = {0}; int main(){ int i,j,n,m; cin >> n >> m; a[0][1] = 1; a[0][n + 1] = 1; for(int i = 1;i <= m;i++){ for(int j = 1;j <= n + 1;j++){ a[i][j] = a[i - 1][j - 1] + a[i - 1][j + 1]; } a[i][1] = a[i][n + 1] = a[i][1] + a[i][n + 1]; } cout << a[m][1]; return 0; }
4天前 来自 云南
0他都没初始化 数组再大有什么用
4天前 来自 广东
0
#include<bits/stdc++.h> using namespace std; int dp[35][35]; int main(){ int n, m; cin >> n >> m; // 初始化 for(int j = 1; j <= n; ++j){ dp[0][j] = 0; } dp[0][1] = 1; for(int i = 1; i <= m; ++i){ for(int j = 1; j <= n; ++j){ int l = j - 1, r = j + 1; if(l == 0){ l = n; } if(r > n){ r = 1; } dp[i][j] = dp[i-1][l] + dp[i-1][r]; } } cout << dp[m][1] << endl; return 0; }
2024-08-17 来自 浙江
0OK谢谢大佬
2024-08-30 来自 广东
0
没有初始化:
#include<bits/stdc++.h> using namespace std; int dp[35][35]; int main(){ int n, m; cin >> n >> m; // 初始化 dp[0][1] = 1; for(int i = 1; i <= m; ++i){ for(int j = 1; j <= n; ++j){ int l = j - 1, r = j + 1; if(l == 0){ l = n; } if(r > n){ r = 1; } dp[i][j] = dp[i-1][l] + dp[i-1][r]; } } cout << dp[m][1] << endl; return 0; }
2024-08-17 来自 浙江
0你好
2024-08-17 来自 浙江
0
有帮助,赞一个