题解 P5594 【【XR-4】模拟赛】

AquaRio

2019-10-20 22:45:08

Solution

**题目传送门:**[\[XR-4\] 模拟赛](https://www.luogu.org/problem/P5594) **Description** $n$ 个人要打 $m$ 场模拟赛,每个人列出自己第 $i$ 按照顺序打模拟赛,求每天要举行多少模拟赛。 **Solution** 这题比较简单,是签到题。 根据题意,我们读入后竖着扫,扫 $m$ 遍,每一列出现的数字就会对对应的天数有一次贡献,并且在每一列最多只有一次贡献。 **Code** ```cpp /* Name: [XR-4] 模拟赛 Author: Lovely_XianShen Date: 20/10/19 19:18 */ #include<bits/stdc++.h> using namespace std; int n,m,k; int ans[1005]; int a[1005][1005]; bool used[1005]; int main(){ scanf("%d%d%d",&n,&m,&k); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) scanf("%d",&a[i][j]); for(int i=1;i<=m;i++){ memset(used,0,sizeof used); for(int j=1;j<=n;j++){ if(!used[a[j][i]]){ used[a[j][i]]=1; ans[a[j][i]]++; } } } for(int i=1;i<=k;i++) cout<<ans[i]<<" "; return 0; } ```