【寒假每日一题】洛谷 P8254 [NOI Online 2022 入门组] 王国比赛

题目链接:P8254 [NOI Online 2022 入门组] 王国比赛 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

题目背景

经过管理员的考虑,我们打算将民间数据单独存放在最后一个 Subtask 中。这些测试点分数均为 0 分,但是没有通过其中的任何测试点将会视为此题不通过。

民间数据提供者:@一扶苏一。

题目描述

智慧之王 Kri 统治着一座王国。  

这天 Kri 决定举行一场比赛,来检验自己大臣的智慧。  

比赛由 n 道判断题组成,有 m 位大臣参加。现在你已经知道了所有大臣的答题情况,但尚未拿到答案,于是你决定先行预测。  

具体来说,对于第 i 道题,有 x 个大臣选对,y 个大臣选错(显然有 x + y = m),如果 x > y,那么你预测这题答案为对,否则为错。为了方便,我们保证 m 是奇数。

在统计完成后,你拿到了答案,你想知道通过你的预测方式你最后有几道题预测正确。

输入格式

第一行两个正整数 n,m,保证 m 是奇数。

接下来 m 行,每行 n 个整数,第 i 行第 j 个整数代表第 i 位大臣对第 j 道题的答案,1 表示他选对,0 表示他选错。

接下来 1 行 n 个整数, 表示比赛答案,第 i 个数 bi 若为 1 表示第 i 道题答案是对,若为 0 表示答案是错。

输出格式

输出一个整数,表示你最后有几题预测正确。

样例 #1

样例输入 #1

3 3
1 0 1
0 1 1
0 1 0
1 1 1

样例输出 #1

2

样例 #2

样例输入 #2

6 5
1 0 1 1 1 0
0 1 0 1 1 1
0 0 1 0 1 0
1 0 1 0 1 0
0 1 0 1 0 0
1 0 1 0 1 0

样例输出 #2

4

样例 #3

样例输入 #3

见附件中的 kingdom3.in

样例输出 #3

见附件中的 kingdom3.out

提示

样例 1 解释】

  • 第一题 x = 1,x = 2 你预测答案为错(即 0),实际答案为1,预测错误。
  • 第二题 x = 2,y = 1 你预测答案为对(即 1),实际答案为1,预测正确。
  • 第三题 x = 2,y = 1 你预测答案为对(即 1),实际答案为1,预测正确。

所以预测正确的题数为 2。

【数据范围】

对于 20% 的数据,n <= 5,m = 1。

对于 50% 的数据,n <= 10,m <= 10。

对于 100% 的数据,1 <= n <= 1000,1 <= m <= 1000,m 为奇数。

附件下载

kingdom.zip 2.91KB

AC code:

#include<iostream>
#include<algorithm>
#include<unordered_map>

using namespace std;

int main()
{
	int n,m;
	cin>>n>>m;
	int a[m + 1][n];
	
	for(int i = 0 ; i < m ; i ++)
		for(int j = 0 ; j < n ; j ++)
			cin>>a[i][j];
	
	for(int i = 0 ; i < n ; i ++)
		cin>>a[m][i];
	
	int res = 0;
	for(int i = 0 ; i < n ; i ++)
	{
		unordered_map<int,int> mp;
		for(int j = 0 ; j < m ; j ++)
			mp[a[j][i]] ++;
		
		if(mp[a[m][i]] > m / 2)
			res ++;
	} 
	cout<<res;
	
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值