下面先附上我的水货代码,,,,一会附上,,,刘大婶给的代码///////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. windows 平台使用wireshark命令行抓包

    Windows网络流量大,或则需要长时间抓包时,wireshark图形界面使用起来比较麻烦 wireshark 内置 dumpcap命令 Capture interface:  -i <inte ...

  2. Java重写equals方法和hashCode方法

    package com.ddy; public class User {     private Integer id;     private String name;     private St ...

  3. 编译iOS使用的.a库文件

    首先是须要编译成.a的源文件 hello.h: #ifndef __INCLUDE_HELLO_H__ #define __INCLUDE_HELLO_H__ void hello(const cha ...

  4. Random产生随机数问题

    昨天在开发时发现这个问题,在同一个for循环内,通过Random多次产生随机数得到的随机数竟是一样的!以前还真没发现这个问题. 以下是简化的代码,如果将random定义在for循环外面则不会有问题(猜 ...

  5. FMDB中常用SQL使用

    大家工作中,最常用到的无非是 增.删.查.改... 在SQL中对应的语句为:INSERT DELETE SELECT UPDATE 首先,你可以使用一款叫做“sqlite database brows ...

  6. 识别IE11浏览器

    现在俺们做的系统十分高大上,用IE的话非要上IE11或以上版本. 咋检测呢?检测到用户用IE.且IE低于IE11的话就提示他升级浏览器呢?可以酱紫: var _IE = (function (d, w ...

  7. 2016/04/29 ①cms分类 ② dede仿站制作 步骤 十个步骤 循环生成菜单 带子菜单的菜单 标签 栏目 栏目内容列表 内容图片列表

    cms 系统还有: phpcms     企业站 Xiaocms  织梦  企业站 wordpress (博客) Ecshop 商城 Ecmall 多用户 Discms 记账 方维 订餐 团购 CMS ...

  8. how to use datatables editor

    Basic initialisation Editor is a Create, Read, Update and Delete (CRUD) extension forDataTables that ...

  9. ABAP 邮件

    function zint_send_email.*"-------------------------------------------------------------------- ...

  10. 【转】Java并发编程:Synchronized底层优化(偏向锁、轻量级锁)

     一.重量级锁 上篇文章中向大家介绍了Synchronized的用法及其实现的原理.现在我们应该知道,Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的.但是监视器锁本 ...