神奇代码
  • 板块灌水区
  • 楼主AmikazeMinato
  • 当前回复6
  • 已保存回复6
  • 发布时间2024/10/15 18:15
  • 上次更新2024/10/15 18:52:50
查看原帖
神奇代码
1385625
AmikazeMinato楼主2024/10/15 18:15

为什么在devc++里,编译不通过,提交编译却过了 提交记录

#include <iostream>
#include <vector>
using namespace std;

int minSelectedPoints(vector<vector<int>>& grid) {
    int n = grid.size();
    int m = grid[0].size();
    vector<vector<int>> dp(n, vector<int>(m, 0));
    dp[0][0] = grid[0][0] == 1? 0 : 1;
    for (int i = 1; i < n; ++i) {
        dp[i][0] = (grid[i][0] == 1 || dp[i - 1][0] == 0)? 0 : 1 + dp[i - 1][0];
    }
    for (int j = 1; j < m; ++j) {
        dp[0][j] = (grid[0][j] == 1 || dp[0][j - 1] == 0)? 0 : 1 + dp[0][j - 1];
    }
    for (int i = 1; i < n; ++i) {
        for (int j = 1; j < m; ++j) {
            if (grid[i][j] == 1) {
                dp[i][j] = 0;
            } else {
                dp[i][j] = dp[i - 1][j] + dp[i][j - 1] - dp[i - 1][j - 1];
                if (dp[i][j] == 0) {
                    dp[i][j] = dp[i - 1][j] + dp[i][j - 1] + 1;
                }
            }
        }
    }
    return dp[n - 1][m - 1];
}
int main() {
    int n, m;
    cin >> n >> m;
    vector<vector<int>> grid(n, vector<int>(m));
    int a, b, x;
    cin >> a >> b >> x;
    grid[a - 1][b - 1] = x;
    int result = minSelectedPoints(grid);
    cout << result << endl;
    return 0;
}
2024/10/15 18:15
加载中...