猜数字游戏

原创 2015年11月21日 12:32:22

实现经典“猜数字”游戏。给定答案序列和用户猜的序列,统计有多少数字位数正确(A),有多少数字在两个序列都出现过但位置不对(B)。

输入包含多组数据。每组输入第一行为序列长度n,第二行是答案序列,接下来是若干猜测序列。猜测序列全为0时改组数据输入结束。n=0时输入结束。

样例输入:

4

1 3 5 5

1 1 2 3

43 3 5

6 5 5 1

6 1 3 5

1 3 5 5

0 0 0 0

0

样例输出:

game 1:

   (1,1)

   (2,0)

   (1,2)

   (1,2)

   (4,0)



   直接统计可得A,为了求B,对于每个数字(1-9),统计二者出现的次数才c1和c2,则min(c1,c2)就是该数字对B的贡献。最好要减去A的部分。如下代码:


#include<stdio.h>

#define maxn 1010

int main(){
	int n,a[maxn],b[maxn];
	int kase=0;
	while((scanf("%d",&n)!=EOF),n){
		int i;
		printf("Game %d:\n",++kase);
		for(i=0;i<n;i++)
			scanf("%d",&a[i]);
		for(;;){
			int A=0,B=0;
			for(i=0;i<n;++i){
				scanf("%d",&b[i]);
				if(a[i]==b[i]) A++;
			}
			if(b[0]==0) break;
			
			for(int d=1; d <= 9; ++d){
				int c1 = 0, c2 = 0;
				for(i = 0; i < n; ++i){
					if(a[i]==d) c1++;
					if(b[i]==d) c2++; 
					
				}
				if(c1<c2)	B += c1;
				else	B += c2;
				
			}
			printf("    (%d,%d)\n",A,B-A);
		} 	
	}
return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

MFC 小游戏之猜数字

这个游戏简单而有趣,在做这个游戏中,又对MFC的一些知识更为了解了,又学到了不少东西。 感兴趣的筒靴可以下载源代码看看! 游戏规则请看下面的说明界面截图! 因水平有限,不好之处请见谅! ...

“猜数字”游戏的框架程序(javascript版)

想必大家小时候都玩过文曲星上的“猜数字”游戏,当时就想什么时候能自己把这个游戏搞出来,转眼之间已成研究生,好快。 以下是我在大学时编写的“猜数字”程序,原理很简单。首先游戏初始化时要自动生成四位不相...

js小游戏,猜一个1~99的数字(version2.in 2012.11.2)

呵呵。。呵呵呵呵。。。 保存成.html就可以玩了。 更新于2012.11.2 修改了prompt传入的i为字符类型,导致比较的时候出错。 修改了逻辑判断的顺序,使思路更加合理 ...

2_猜数字游戏_140329(C开发)

实例目的:         强化while的用法 实例要求:         正确输入用户名和密码【用户名:csdn(小写),密码:5love1】后,游戏自动随机设置一个目标数字(1到100之间...

Java写的猜数字游戏(挺有意思的)

终于接触java了,java跟C果然很不一样,设计思路可以说是完全不同。 现在体会到面对对象编程的厉害了,我发现我已经爱上这种编程语言。 前两天没事写了个java的猜数字游戏,其实这个我很早就想过...

淘宝面试题猜数字游戏

开源中国 代码分享 当前位置:代码分享 » Python  » 编程基础 淘宝面试题猜数字游戏 yangst 发布于 2012年08月21日 14时, 1...

UVa 340 猜数字游戏的提示

题意:题目看起来有点难,特别是看到choose、max的时候,其实认真看完,就是对比两行,相同位置元素相同,则是强匹配;否则,元素相同,而位置不同,则是弱匹配。 思想:强匹配,过一遍,对比相应位置,相...

如何运用C语言制作猜数字小游戏?

   之前做课程设计无意中发现了这个好玩的游戏,于是就抱着做着玩的心态开始用c写这个东西,虽然东西不够精致,但是也没有太大瑕疵,希望各位大神们能给出点意见,也希望这篇小代码能给您帮助。(ps:游...

一个简单的猜数字游戏

一个简单的猜数字游戏,程序随机生成一个不包含重复数数字的4位数,用户输入数字进行猜测,猜测的结果,程序以?A?B的形式给出,其中,A前面的数字表示猜测的数字中位置和数字都正确的个数,B前面的数字表示数...

python 2016.8.8 python小游戏— —猜数字

1.打开random,easygui这两个库import random, easygui 2.设置随机数范围secret = random.randint(1, 100)3.次数初始为0tries =...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)