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 ...
随机推荐
- linux IO子系统和文件系统读写流程
本文转载自:http://blog.csdn.net/kidd_3/article/details/6909097 Technorati 标签: I/O 子系统 --------------- ...
- Linux驱动编程--基于I2C子系统的I2C驱动
代码中,我添加了很多注释,应该不难理解,有错误大家可以指出来,我再改正 #include <linux/kernel.h> #include <linux/module.h> ...
- SPA解释:单页应用程序
单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序. 单页W ...
- 【风马一族_xml】xml语法
xml语法 文档声明 用来声明xml的属性,用来指挥解析引擎如何去解析当前xml 通常一个xml都要包含并且只能包含一个文档声明 xml的文档必须在整个xml的最前面,在文档声明之前不能有任何内容 & ...
- background-size 设置背景图片的大小
background-size 设置背景图片的大小,以长度值或百分比显示,还可以通过cover和contain来对图片进行伸缩. 语法: background-size: auto | <长度值 ...
- JavaScript ==和===
== : 值等 === :恒等(引用等) ref: http://blog.csdn.net/wang171838/article/details/8554305 JavaScript支持“=”.“ ...
- SQL Server中timestamp(时间戳)
SQL Server timestamp 数据类型与时间和日期无关.SQL Server timestamp 是二进制数字,它表明数据库中数据修改发生的相对顺序.实现 timestamp 数据类型最初 ...
- RHEL安装docker-compose
Note that Compose 1.5.2 requires Docker 1.7.1 or later. pip install docker-compose==1.5.2 Note that ...
- Stanford parser学习:LexicalizedParser类分析
上次(http://www.cnblogs.com/stGeekpower/p/3457746.html)主要是对应于javadoc写了下LexicalizedParser类main函数的功能,这次看 ...
- laravel框架少见方法详解
1.whereDate() 方法 $q->where('created_at', '>=', date('Y-m-d').' 00:00:00')); 以前查数据时,直接用where条件来 ...