这段代码哪里错了?为嘛错了?怎么改?

lightleafsea 2020-05-26 18:16:06 2020-05-26 18:16:48 7 返回题目

这段代码哪里错了?


#include<bits/stdc++.h>
using namespace std;
unsigned long long p[101][101];
int main()
{
    int n,m;
    cin>>n>>m;
    unsigned long long s=0;
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){
            cin>>p[i][j];
        }
        s=s+p[i][0]+p[i][m-1];
    }
    for(int i=0;i<m;i++){
        s=s+p[0][i]+p[n-1][i];
    }
    s=s-p[0][0]-p[0][m-1]-p[n-1][0]-p[n-1][m-1];
    cout<<s<<endl;
    return 0;
}

Wrong Answer 80
错的是测试点1和测试点2。

哪位大神说一下为嘛错了,错哪里?

{{ vote && vote.total.up }}

共 2 条回复

wurenchao

#include<bits/stdc++.h>

using namespace std;

int m,n,i,j,ans; int a[110][110];

int main() {

cin>>m>>n; for(i=1;i<=m;i++) { for(j=1;j<=n;j++) { cin>>a[i][j]; if(i==1||i==m||j==1||j==n) { ans=ans+a[i][j]; } } } cout<<ans; return 0; }

a1ioua

你都正确了,而我的还是错的:


#include <bits/stdc++.h>

int main() {
    int m, n, sum = 0;
    scanf("%d %d", &m, &n);
    int mn[m][n];
    for (int i = 0; i < m; i++)
        for (int j = 0; j < n; j++) scanf("%d", &mn[i][j]);
    for (int i = 0; i < n; i++) sum += mn[0][i] + mn[n - 1][i];
    for (int i = 1; i < m - 1; i++) sum += mn[i][0] + mn[i][m - 1];
    printf("%d", sum);
    return 0;
}

哈哈