hdu1172(枚举)
中文题,题意就不解释了。
思路:因为答案一定是四位数,所以只要枚举1000-9999,如果符合所有条件,那么保存一下答案,记录一下答案的个数,如果答案是唯一的,那么输出它,否则,就不确定。
代码如下:
#include<iostream>
#include<cstring>
using namespace std;
struct node{
int num,t,p;
};
node a[];
int check(int i,int j)
{
int b[],c[],t=,d=,v[]={};
while(i)//分解每一位数
{
b[t++]=i%;
v[i%]++;//记录当前位置的数出现过几次
i/=;
}
int p=a[j].num;
while(p) //同上
{
c[d++]=p%;
p/=;
}
int same=,pos=;
for(int k=;k<;k++)
{
if(v[c[k]])//判断相同数字的个数
{
same++;
v[c[k]]--;
}
}
for(int k=;k<;k++)//判断相同位置的个数
{
if(c[k]==b[k])
pos++;
}
if(same==a[j].t&&pos==a[j].p)//如果满足这两个条件返回真值
return ;
return ;
}
int main()
{
int n;
while(cin>>n)
{
if(n==)
break;
for(int i=;i<n;i++)
cin>>a[i].num>>a[i].t>>a[i].p;
int flag=,ans;
for(int i=;i<=;i++)
{
int t=;//用于记录满足了几个条件
for(int j=;j<n;j++)
{
if(check(i,j))//判断是否满足条件
t++;
}
if(t==n)//如果所有条件都满足
{
ans=i;
flag++;//满足条件的个数
}
}
if(flag==)//如果答案唯一
cout<<ans<<endl;
else
cout<<"Not sure"<<endl;
}
return ;
}
hdu1172(枚举)的更多相关文章
- HDU1172(枚举)
猜数字 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- hdu1172猜数字(暴力枚举)
猜数字 Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- Swift enum(枚举)使用范例
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...
- 编写高质量代码:改善Java程序的151个建议(第6章:枚举和注解___建议88~92)
建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类" ...
- Objective-C枚举的几种定义方式与使用
假设我们需要表示网络连接状态,可以用下列枚举表示: enum CSConnectionState { CSConnectionStateDisconnected, CSConnectionStateC ...
- Help Hanzo (素数筛+区间枚举)
Help Hanzo 题意:求a~b间素数个数(1 ≤ a ≤ b < 231, b - a ≤ 100000). (全题在文末) 题解: a~b枚举必定TLE,普通打表MLE,真是头疼 ...
- 枚举:enum
枚举 所谓枚举就是指定好取值范围,所有内容只能从指定范围取得. 例如,想定义一个color类,他只能有RED,GREEN,BLUE三种植. 使用简单类完成颜色固定取值问题. 1,就是说,一个类只能完成 ...
- .NET 基础一步步一幕幕[方法、结构、枚举]
方法.结构.枚举 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值,写void 方法名:P ...
- Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件
在开发过程中一些状态的表示使用到枚举类型,那么如何将枚举类型直接绑定到ListControl(DropDownList)是本次的主题,废话不多说了,直接代码: 首先看工具类代码: /// <su ...
随机推荐
- Spring Session event事件分析
1. org.apache.catalina.session.StandardSession 这是servlet-api jar包中的一个类.是session接口的标准实现.当session创建的时候 ...
- gitIgnore说明
有些内容不需要提交到git服务器上,这时我们可以配置.gitIgnore文件.可参考:https://www.cnblogs.com/kevingrace/p/5690241.html 可能有时候你会 ...
- git分支与主干合并操作
git分支与主干合并操作1.主干合并分支在主干上合并分支 branch (master)git merge branch --squash 提交合并后的代码 (master)git commit -m ...
- java-类、对象
1.类和对象: 类是抽象的,通常不能直接使用 对象是具体的,根据类来创建对象. 2.如何定义一个类:成员变量.成员方法 成员变量:直接定义在类中,在方法外面 成员方法:去掉static 关键字,其他和 ...
- KMP初步
KMP算法专门用于处理字符串匹配问题. 开始学习的时候觉得很有道理,但是一些细节总觉得有些模糊,所以一直觉得懵懵懂懂.今天思考了一下,总结一下,希望对大家也有帮助. 朴素的字符串匹配算法就是一个一个字 ...
- ES6 Symbol数据类型和set-map 数据结构
Symbol数据类型 ES6新加的数据类型,提供一个独一无二的值 { let a1 = Symbol() ;let a2 = Symbol() } //声明 { let a3 = Symbol.for ...
- mysql--实现oracle的row_number() over功能
有时候我们想要得到每个分组的前几条记录,这个时候oracle中row_number函数使用非常方便,但可惜mysql没有.网上搜了些实现方法. 表flow_task有phaseno(序列号),obje ...
- AWS的EC2实例搭建服务器使用stackoverflow教程
作为一个技术开发工程师, 一个给力的问题解决方案搜索引擎是十分必要的, stackoverflow作为一个码农必备神器, 存在访问不稳定,有时候打不开的问题,下面介绍如何在亚马逊云服务器上搭建属于自己 ...
- 在visual studio code 中配置python以及解决中文乱码问题
安装好 visual stuido code (下面简称 “ VSC ”)后,要想使用它运行调试 python 代码还需要做一些工作以解决下列问题: 搭建 python 环境 print 打印中文出现 ...
- allegro17.2 gerber 步骤
1.Manufacture -> NC -> Drill Customization... 先点击 Auto generate symbols,出来对话框后点击 YES .然后在Symbo ...