hdu - 1172 猜数字 (思维题)
http://acm.hdu.edu.cn/showproblem.php?pid=1172
这个题换一种想法,可以找出四位数中所有满足条件的数看是否只有一个.
- #include <iostream>
- #include <cstdio>
- #include <cmath>
- #include <vector>
- #include <cstring>
- #include <string>
- #include <algorithm>
- #include <string>
- #include <set>
- #include <functional>
- #include <numeric>
- #include <sstream>
- #include <stack>
- #include <map>
- #include <queue>
- #pragma comment(linker, "/STACK:102400000,102400000")
- #define CL(arr, val) memset(arr, val, sizeof(arr))
- #define ll long long
- #define inf 0x7f7f7f7f
- #define lc l,m,rt<<1
- #define rc m + 1,r,rt<<1|1
- #define pi acos(-1.0)
- #define L(x) (x) << 1
- #define R(x) (x) << 1 | 1
- #define MID(l, r) (l + r) >> 1
- #define Min(x, y) (x) < (y) ? (x) : (y)
- #define Max(x, y) (x) < (y) ? (y) : (x)
- #define E(x) (1 << (x))
- #define iabs(x) (x) < 0 ? -(x) : (x)
- #define OUT(x) printf("%I64d\n", x)
- #define lowbit(x) (x)&(-x)
- #define Read() freopen("a.txt", "r", stdin)
- #define Write() freopen("b.txt", "w", stdout);
- #define maxn 1000000000
- #define N 2510
- #define mod 1000000000
- using namespace std;
- struct point
- {
- int x,y,z;
- }p[];
- bool judge(int n,int m)
- {
- int a[],b[],used[];
- a[]=n/,a[]=n/%,a[]=n/%,a[]=n%;
- b[]=p[m].x/,b[]=p[m].x/%,b[]=p[m].x/%,b[]=p[m].x%;
- // for(int i=0;i<4;i++)
- // printf("%d ",b[i]);
- //printf("\n");
- int ans=;
- for(int i=;i<;i++)
- {
- if(a[i]==b[i]) ans++;
- }
- // printf("%d\n",ans);
- if(ans!=p[m].z) return false;
- ans=;
- memset(used,,sizeof(used));
- for(int i=;i<;i++)
- for(int j=;j<;j++)
- if(!used[j]&&a[i]==b[j])
- {
- ans++;
- used[j]=;
- //printf("%d %d\n",a[i],b[j]);
- break;
- }
- // printf("%d\n",ans);
- if(ans!=p[m].y) return false;
- return true;
- }
- int main()
- {
- //freopen("a.txt","r",stdin);
- int n;
- while(~scanf("%d",&n)&&n)
- {
- for(int i=;i<n;i++) scanf("%d%d%d",&p[i].x,&p[i].y,&p[i].z);
- int ans=,cnt=;
- for(int i=;i<=;i++)
- {
- bool flag=;
- for(int j=;j<n;j++)
- if(!judge(i,j)) {flag=;break;}
- if(!flag) {ans++;cnt=i;}
- }
- // printf("%d\n",ans);
- if(ans==) printf("%d\n",cnt);
- else printf("Not sure\n");
- }
- return ;
- }
hdu - 1172 猜数字 (思维题)的更多相关文章
- HDU 1172 猜数字 (模拟)
题目链接 Problem Description 猜数字游戏是gameboy最喜欢的游戏之一.游戏的规则是这样的:计算机随机产生一个四位数,然后玩家猜这个四位数是什么.每猜一个数,计算机都会告诉玩家猜 ...
- hdu 1172 猜数字
猜数字 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 猜数字(暴力枚举)
题目 这是一道可以暴力枚举的水题. //以下两个都可以ac,其实差不多一样,呵呵 //1: //4 wei shu #include<stdio.h> struct tt { ],b[], ...
- HDU 2178.猜数字【分析能力练习】【读题能力练习】【8月10】
猜数字 Problem Description A有1数m.B来猜.B每猜一次,A就说"太大"."太小"或"对了" . 问B猜n次能够猜到的 ...
- [HDOJ] 1172.猜数字
Problem Description 猜数字游戏是gameboy最喜欢的游戏之一.游戏的规则是这样的:计算机随机产生一个四位数,然后玩家猜这个四位数是什么.每 猜一个数,计算机都会告诉玩家猜对几个数 ...
- HDOJ(HDU) 2178 猜数字(题意有点难理解、、、)
Problem Description A有1数m,B来猜.B每猜一次,A就说"太大","太小"或"对了" . 问B猜n次可以猜到的最大数. ...
- HDU 5752 Sqrt Bo (思维题) 2016杭电多校联合第三场
题目:传送门. 题意:一个很大的数n,最多开5次根号,问开几次根号可以得到1,如果5次还不能得到1就输出TAT. 题解:打表题,x1=1,x2=(x1+1)*(x1+1)-1,以此类推.x5是不超过l ...
- HDU 2178 猜数字
题解:设猜到的最大的数是h,在1到h间,你最多只要猜log2(h)+1(取整)次,所以易知==>h=2^m-1.即猜m次,能猜到的最大的数为2^m-1. #include <cstdio& ...
随机推荐
- AJPFX实践 java实现快速排序算法
快速排序算法使用的分治法策略来把一个序列分为两个子序列来实现排序的思路: 1.从数列中挑出一个元素,称为“基准“2.重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面 ...
- 块级元素的text-align对行内元素和果冻元素(inline-block)的作用
块级元素社设置了text-align:center以后,对其直接行内元素/果冻元素.继承行内元素/果冻元素都会产生“居中效应”. <style> .test4{ text-align: c ...
- GridView 中绑定DropDownList ,下拉框默认选中Label的值
在GridView中,我们 有时候要绑定值. 前台绑定的代码可以这样 <asp:TemplateField HeaderText="当前状态" ItemStyle-Horiz ...
- oracle 创建表
--创建表 create table browser_track( btId number not null , opend_id ) not null, url_address ) not null ...
- rabbitmq在storm中使用
storm中只能进行任务计算,不能保存中间结果,最后结果. 这就有一个需求,保存计算结果,最好还是分布式的,因为storm也是分布式,大数据计算. 流行的分布式计算中使用队列保存数据居多. kafka ...
- JS获取服务器端控件ID
很多时候我们需要在JS中对服务器端控件进行一些简单处理,但是这个时候没有必要回发到服务器,让服务器去处理,这个时候就又要用到JS了 那么怎么去获取这个服务器端控件呢?我们知道服务器最终返回到用户界面的 ...
- JVM参数说明介绍
1.JVM运行时数据区内存参数说明 2.JVM垃圾收集器参数总结 原文:https://blog.csdn.net/bluuusea/article/details/90697340 ======== ...
- anchor_target_layer层解读
总结下来,用generate_anchors产生多种坐标变换,这种坐标变换由scale和ratio来,相当于提前计算好.anchor_target_layer先计算的是从feature map映射到原 ...
- 第2节 hive基本操作:10、外部分区表综合练习
外部分区表综合练习: 需求描述:现在有一个文件score.csv文件,存放在集群的这个目录下/export/servers/scoredatas/month=201806,这个文件每天都会生成,存放到 ...
- CSS Paint API绘制透明格子背景实例页面
CSS代码: .box { width: 180px; height: 180px; background: paint(transparent-grid); } HTML代码: <div cl ...