hdu 1172 猜数字(暴力枚举)
这是一道可以暴力枚举的水题。
//以下两个都可以ac,其实差不多一样,呵呵
//1:
//4 wei shu
#include<stdio.h>
struct tt
{
char a[],b[],c[];
}e[]; int main()
{
int n,i,count,j,num[],mark[],yi,flag,a1,a2,a3,a4;
while(scanf("%d",&n),n)
{
for(i=;i<n;i++)
{
scanf("%s%s%s",e[i].a,e[i].b,e[i].c);
}
yi=;flag=;
num[]=;num[]=num[]=num[]=;
for(j=;j<;j++)
{
for(i=;i<n;i++)
{
count=;
for(int ii=;ii<;ii++)
if(num[ii]==e[i].a[ii]-'')
count++;
if(count!=e[i].c[]-'')break; for(int q=;q<;q++)mark[q]=; count=;
for(int ii=;ii<;ii++)
{
for(int jj=;jj<;jj++)
{
if(num[ii]==e[i].a[jj]-''&&mark[jj]==)
{mark[jj]=,count++;break;}
}
}
if(count!=e[i].b[]-'')break;
}
if(i==n)
{
flag++;
if(yi==)a1=num[],a2=num[],a3=num[],a4=num[],yi=;
}
num[]++;
if(num[]>)//原来之前是这里细节出错了,要注意哦
num[]++,num[]=num[]%;
if(num[]>)
num[]++,num[]=num[]%;
if(num[]>)
num[]++,num[]=num[]%;
num[]=num[]%;
}
if(flag==)
printf("%d%d%d%d\n",a1,a2,a3,a4);
else
printf("Not sure\n");
}
return ;
}
//2:
#include<stdio.h>
struct tt
{
char a[],b[],c[];
}e[];
int main()
{
int n,i,count,j,num[],flag,a1,a2,a3,a4;
bool yi,mark[];
while(scanf("%d",&n),n)
{
for(i=;i<n;i++)scanf("%s%s%s",e[i].a,e[i].b,e[i].c);
yi=false;
num[]=num[]=num[]=num[]=flag=;
for(j=;j<;j++)
{
for(i=;i<n;i++)
{
count=;
for(int ii=;ii<;ii++)
if(num[ii]==e[i].a[ii]-'')count++;
if(count!=e[i].c[]-'')break; for(int q=;q<;q++)mark[q]=false; count=;
for(int w=;w<;w++)
for(int r=;r<;r++)
if(num[w]==e[i].a[r]-''&&!mark[r])
{mark[r]=true,count++;break;}
if(count!=e[i].b[]-'')break;
}
if(i==n){
flag++;
if(!yi)a1=num[],a2=num[],a3=num[],a4=num[],yi=true;
}
num[]++;
if(num[]>)num[]++,num[]=num[]%; //原来之前是这里细节出错了,要注意哦
if(num[]>)num[]++,num[]=num[]%;
if(num[]>)num[]++,num[]=num[]%;
num[]=num[]%;
}
if(flag==)printf("%d%d%d%d\n",a1,a2,a3,a4);
else printf("Not sure\n");
}
return ;
}
//不过2很神奇的是0毫秒,原因不详
hdu 1172 猜数字(暴力枚举)的更多相关文章
- hdu1172猜数字(暴力枚举)
猜数字 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- HDU 1172 猜数字(DFS)
猜数字 Time Limit:10000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status ...
- hdu 1172 猜数字
猜数字 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- HDU 1172 猜数字 (模拟)
题目链接 Problem Description 猜数字游戏是gameboy最喜欢的游戏之一.游戏的规则是这样的:计算机随机产生一个四位数,然后玩家猜这个四位数是什么.每猜一个数,计算机都会告诉玩家猜 ...
- hdu - 1172 猜数字 (思维题)
http://acm.hdu.edu.cn/showproblem.php?pid=1172 这个题换一种想法,可以找出四位数中所有满足条件的数看是否只有一个. #include <iostre ...
- [HDOJ] 1172.猜数字
Problem Description 猜数字游戏是gameboy最喜欢的游戏之一.游戏的规则是这样的:计算机随机产生一个四位数,然后玩家猜这个四位数是什么.每 猜一个数,计算机都会告诉玩家猜对几个数 ...
- HDU 2178.猜数字【分析能力练习】【读题能力练习】【8月10】
猜数字 Problem Description A有1数m.B来猜.B每猜一次,A就说"太大"."太小"或"对了" . 问B猜n次能够猜到的 ...
- HDU 5778 abs (暴力枚举)
abs Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Problem De ...
- HDU 1015.Safecracker【暴力枚举】【8月17】
Safecracker Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is lo ...
随机推荐
- 《C++Primer中文版》读书笔记——第1章 开始
istream对象:cin(标准输入对象); ostream对象:cout(标准输出对象) cerr(输出错误和警告) clog(输出一般性信息) 读取数量不定的输入数据,eg , sum=; whi ...
- C# 玩家昵称屏蔽敏感字眼
功能:使用正则 对玩家昵称处理,如果含有 屏蔽字库里的敏感字眼进行屏蔽.已封装成dll 1.屏蔽字库处理成所需要的正则格式:(所需正则表达式格式:".*((XX)|(XX)|(XX)|.. ...
- CentOS学习笔记--程序管理
程序管理 一个程序被加载到内存当中运行,那么在内存内的那个数据就被称为程序(process).程序是操作系统上非常重要的概念, 所有系统上面跑的数据都会以程序的型态存在.那么系统的程序有哪些状态?不同 ...
- corosync+pacemaker实现高可用(HA)集群
corosync+pacemaker实现高可用(HA)集群(一) 重要概念 在准备部署HA集群前,需要对其涉及的大量的概念有一个初步的了解,这样在实际部署配置时,才不至于不知所云 资源.服务与 ...
- Android String format 通过value 下的string.xml 文件
<string name="format_coordinate" formatted="false">%s %d° %d\' %d\" % ...
- apache 配置虚拟主机
1 打开httpd.conf 找到 # Virtual hosts #Include conf/extra/httpd-vhosts.conf [由于apache的版本不同,可能你ctrl+F ...
- HTML5的页面资源预加载技术(Link prefetch)加速页面加载
不管是浏览器的开发者还是普通web应用的开发者,他们都在做一个共同的努力:让Web浏览有更快的速度感觉.有很多已知的技术都可以让你的网站速度变得更快:使用CSS sprites,使用图片优化工具,使用 ...
- FAN_int2ExcelColChar functions
static void FAN_int2ExcelColChar(Args _args) { Dialog dlg = new dialog("please enter int number ...
- flex 监听网络连接情况
NativeApplication.nativeApplication.addEventListener(Event.NETWORK_CHANGE, onNetworkChange); private ...
- git add 命令详解
或"表示git会例出索引库中的文件列表中的第个文件."-"表示git会例出索引库中的文件列表中的第个文件到第个文件.回车将执行.如果我们不输入任何东西,直接回车,将结束r ...