AHOI 2015 猜谜游戏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AHOI 2015 猜谜游戏相关的知识,希望对你有一定的参考价值。

猜谜游戏

描述

滨湖幼儿园的老师带着N位小朋友在玩游戏。

他们玩的是猜谜游戏,在每一轮游戏中,每一位小朋友都需要给出一个在1到100之间的整数(包括1和100)。对于每一位小朋友来说,如果他给出来的数字是唯一的,或者说没有别的小朋友给出来相同的数字,则他就可以获得与所选数字相同的得分。否则得零分。

现在他们一共进行了三轮游戏。老师希望知道三轮游戏之后,每一位小朋友分别可以得到多少分数。

格式

输入格式

输入有1+N行。

其中第一行给出一个正整数N(2<=N<=200)表示参与游戏的小朋友有多少位。

之后N行中的第i行(1<=i<=N)给出三个大于等于1小于等于100的正整数,分别表示第i位小朋友三轮游戏中分别给出的数字是多少。

输出格式

输出有N行。

其中第i行(1<=i<=N)给出了第i个小朋友在经过了三轮游戏之后,可以合计得到的分数。

样例1

样例输入1

5
100 99 98
100 97 92
63 89 63
99 99 99
89 97 98

样例输出1

0
92
215
198
89

样例2

样例输入2

3
89 92 77
89 92 63
89 63 77

样例输出2

0
63
63

限制

对于40%的数据,满足N<=50。
对于100%的数据,满足N<=200。

提示

对于样例一来说,假设五位小朋友分别名为Anold,Borel,Cayler,David和Einstein,则每一个人三轮游戏之后的得分情况如下所示:

Anold : 0+0+0 = 0 
Borel : 0+0+92 = 92 
Cayler : 63+89+63 = 215 
David : 99+0+99 = 198 
Einstein : 89+0+0 = 89

来源

AHOI 2015

 

这就是一题简单的模拟

 

#include <cstdio>
int n,m,g[201][11];
int main() {
	scanf("%d",&n);
	for (int i = 1;i <= n;i++)
		for (int j = 1;j <= 3;j++) scanf("%d",&g[i][j]);
	for (int i = 1;i <= n;i++) {
		int score = 0;
		for (int j = 1;j <= 3;j++) {  //判断与其他小朋友的数字相不相等
			bool flag = true;
			for(int k = 1;k <= n;k++) {
				if (k == i) continue;
				if(g[i][j]==g[k][j]) {
					flag = false;
					break;
				}
			}
			if (flag) score += g[i][j];
		}
		printf("%d\n",score);
	}
	return 0;
}

  

以上是关于AHOI 2015 猜谜游戏的主要内容,如果未能解决你的问题,请参考以下文章

在 python 3. 数字猜谜游戏中将许多参数传递给输入

基本 Java HiLow 猜谜游戏

CPP猜谜游戏不工作,我输入名字后它就停止了

修改后的 Rust Book 猜谜游戏查询

使用一维数组和for循环的C语言字符猜谜游戏

GO语言的实战学习(猜谜游戏和在线词典)| 青训营笔记