T622599 批话哥

· · 个人记录

想法

看到这道题,我们可以顺着题目的思路想。

首先我们先建一个二维数组来记录成绩,初始化为零。

接着我们在输入每人的成绩的时候依据题目进行判断并记录到数组中,这样就保证了数组中记录的是心中想的分数,且未告诉的分数为零。

代码详解

#include <bits/stdc++.h>
using namespace std;
#define int long long
int n,m,k,l,r;
int a[505][505];
int b[505];

signed main(){
    cin>>n>>m>>k>>l>>r;
    for(int i=1;i<=k;i++){
        int x,y,z;
        cin>>x>>y>>z;
        if(z<=l) a[x][y]=100;
        else if(z>=r) a[x][y]=0;
        else a[x][y]=z;
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            b[i]+=a[i][j];
        }
    }
    for(int i=1;i<=n;i++) cout<<b[i]<<' ';
    return 0;
}

完结撒花。