下面先附上我的水货代码,,,,一会附上,,,刘大婶给的代码///////3ms

#include<stdio.h>
#include<string.h>
int main()
{
int A,B,W=,t,n,m,i,j,q,a[],b[],c[];
while(scanf("%d",&t),t)
{
W++;
printf("Game %d:\n",W);
for(A=B=i=;i<t;i++)
{
scanf("%d",&a[i]);
}
for(;;)
{
for(A=B=i=;i<t;i++)
{
scanf("%d",&b[i]);
}
for(i=;i<t;i++)
c[i]=a[i];
//strcpy(c,a);
for(q=i=;i<t;i++)
{
if(b[i]==)
q++;
}
if(q==t)
break;
for(i=;i<t;i++)
{
if(a[i]==b[i])
A++; //这个是序号能对应上的 个数....
}
for(i=;i<t;i++) //原版是a[i].c[i]是原版的复制品...b[i]是猜测的
{
for(j=;j<t;j++)
{
if(c[i]==b[j])
{
c[i]=b[j]=-;
B++;
break;
}
}
}
printf(" (%d,%d)\n",A,B-A);
}
}
}

下面附上刘大婶的代码...相对来说人家的   又简单,时间复杂度又低

#include<stdio.h>
#define maxn 1010
int main()
{
int A,B,i,n,d,a[maxn],b[maxn];
int kase=;
while(scanf("%d",&n),n)
{
printf("Game %d:\n",++kase);
for(i=;i<n;i++) // 这是需要猜的数组.
scanf("%d",&a[i]);
for(;;) //汗, 这里和大婶想的挺像的.
{
A=B=;
for(i=;i<n;i++) //这是 你猜的数组
{
scanf("%d",&b[i]);
if(a[i]==b[i]) //在输入的时候就顺便得到了对应位置相同的 数字.
A++;
}
if(b[]==)// 英文题目上已经说过.
break;
for(d=;d<=;d++)
{
int c1=,c2=; //
for(i=;i<n;i++)
{
if(a[i]==d) //统计一下 需要被猜的数组里面 1的个数
c1++;
if(b[i]==d) //统计一下 猜测数列里1的个数.
c2++;
}
if(c1<c2) //然后将 相同的 加起来
{
B=B+c1;
}
else
{
B=B+c2;
}
}
printf(" (%d,%d)\n",A,B-A);
}
}
return ;
}

例题3-4 master-mind hints的更多相关文章

  1. UVA340-Master-Mind Hints(紫书例题3.4)

    MasterMind is a game for two players. One of them, Designer, selects a secret code. The other, Break ...

  2. 【例题3-4 UVA - 340】Master-Mind Hints

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 这里出现了没有在相同位置的只能唯一配对. 就是说 3322 2234 这种情况. 只有3个weak pair. 即key[1]=a[ ...

  3. [C++]猜数字游戏的提示(Master-Mind Hints,UVa340)

    [本博文非博主原创,思路与题目均摘自 刘汝佳<算法竞赛与入门经典(第2版)>] Question 例题3-4 猜数字游戏的提示(Master-Mind Hints,UVa340) 实现一个 ...

  4. [转]You Could Become an AI Master Before You Know It. Here’s How.

    转自:https://www.technologyreview.com/s/608921/ai-algorithms-are-starting-to-teach-ai-algorithms/# You ...

  5. poj1064 Cable master(二分)

    Cable master 求电缆的最大长度(二分法)   Description Inhabitants of the Wonderland have decided to hold a region ...

  6. 全面理解Python中的类型提示(Type Hints)

    众所周知,Python 是动态类型语言,运行时不需要指定变量类型.这一点是不会改变的,但是2015年9月创始人 Guido van Rossum 在 Python 3.5 引入了一个类型系统,允许开发 ...

  7. 通过一道简单的例题了解Linux内核PWN

    写在前面 这篇文章目的在于简单介绍内核PWN题,揭开内核的神秘面纱.背后的知识点包含Linux驱动和内核源码,学习路线非常陡峭.也就是说,会一道Linux内核PWN需要非常多的铺垫知识,如果要学习可以 ...

  8. xamarin MasterDetailPage点击Master时卡顿现象

    在很多项目中经常会使用到MasterDetailPage的布局方式,而且一般做为主页面来开发,在开发中,发现一个并不算Bug的问题,但是却发生了,以此记录下来,方便大家探讨. 现象是这样的,我开发了一 ...

  9. backup3:master 数据库的备份和还原

    在SQL Server 中,master 数据库记录系统级别的元数据,例如,logon accounts, endpoints, linked servers, and system configur ...

随机推荐

  1. 【APUE】孤儿进程与僵死进程

    基本概念: 在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程.子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 当一个 进程 ...

  2. Linux 网络工具

    1 nethogs nethogs 是一个免费的工具,当要查找哪个 PID (注:即 process identifier,进程 ID) 给你的网络流量带来了麻烦时,它是非常方便的.它按每个进程来分组 ...

  3. instancetype VS id

    英文好的直接读下面链接的文章就好了: http://stackoverflow.com/questions/8972221/would-it-be-beneficial-to-begin-using- ...

  4. HTTP协议漫谈 C#实现图(Graph) C#实现二叉查找树 浅谈进程同步和互斥的概念 C#实现平衡多路查找树(B树)

    HTTP协议漫谈   简介 园子里已经有不少介绍HTTP的的好文章.对HTTP的一些细节介绍的比较好,所以本篇文章不会对HTTP的细节进行深究,而是从够高和更结构化的角度将HTTP协议的元素进行分类讲 ...

  5. python学习第一

    #python学习day1#一.变量#变量命名规范:#驼峰命名法:AgeOfPlane#下划线命名(推荐):age_of_plane#变量格式同C/C++#注意:变量不以中文命名:变量不宜过长:变量因 ...

  6. ora-12541无监听的一种场景

    项目上突然出现无法连接Oracle数据库的情况,提示无监听程序. 现象: 查看 listener.ora配置无问题,用Net Configuration Assistant重建监听,NCA也处于假死状 ...

  7. 2016/3/30 租房子 ①建立租房子的增、删、改php页面 ②多条件查询 ③全选时 各部分全选中 任意checkbox不选中 全选checkbox不选中

    字符串的另一种写法:<<<AAAA; 后两个AA回车要求顶格  不然报错 例子: <!DOCTYPE html> <html lang="en" ...

  8. openxml in sql server

    OPENXML (Transact-SQL) OPENXML provides a rowset view over an XML document. Because OPENXML is a row ...

  9. BZOJ_4177_Mike的农场_最小割

    BZOJ_4177_Mike的农场_最小割 Description Mike有一个农场,这个农场n个牲畜围栏,现在他想在每个牲畜围栏中养一只动物,每只动物可以是牛或羊,并且每个牲畜围栏中的饲养条件都不 ...

  10. STM32:获取复位源,软件复位

    RCC CSR寄存器会存储复位标示,可通过它来知道复位原因,来源: if(RCC_GetFlagStatus(RCC_FLAG_PINRST)) printf("PINRST\r\n&quo ...