【暴力】vijos P1897 学姐吃牛排
判断堆:递归判断每个节点的孩子是否都比其父亲大(小)。
判断BST:中序遍历是否有序。
#include<cstdio>
using namespace std;
#define lc (rt<<1)
#define rc (rt<<1|1)
int T,n,a[],b[],en;
void Mid(int rt)
{
if(lc<=n) Mid(lc);
b[++en]=a[rt];
if(rc<=n) Mid(rc);
}
bool is_BST()
{
bool f1=,f2=; en=; Mid();
for(int i=;i<=n;i++) if(b[i]<b[i-]) {f1=; break;}
if(f1) return ;
for(int i=;i<=n;i++) if(b[i]>b[i-]) {f2=; break;}
if(f2) return ;
return ;
}
bool is_Heap(int rt)
{
if(lc<=n)
{
if(a[lc]>a[rt]) return ;
if(!is_Heap(lc)) return ;
}
if(rc<=n)
{
if(a[rc]>a[rt]) return ;
if(!is_Heap(rc)) return ;
}
return ;
}
bool is_Heap_2(int rt)
{
if(lc<=n)
{
if(a[lc]<a[rt]) return ;
if(!is_Heap_2(lc)) return ;
}
if(rc<=n)
{
if(a[rc]<a[rt]) return ;
if(!is_Heap_2(rc)) return ;
}
return ;
}
int main()
{
scanf("%d",&T);
for(int i=;i<=T;i++)
{
printf("Case #%d: ",i);
scanf("%d",&n);
for(int j=;j<=n;j++) scanf("%d",&a[j]);
bool flag1=,flag2=;
if(is_BST()) flag1=;
if(is_Heap()) flag2=;
if((!flag2)) if(is_Heap_2()) flag2=;
if(flag1&&flag2) puts("Both");
else if(flag1) puts("BST");
else if(flag2) puts("Heap");
else puts("Neither");
}
return ;
}
【暴力】vijos P1897 学姐吃牛排的更多相关文章
- 【vijos1900】 学姐吃寿司
https://vijos.org/p/1900 (题目链接) 题意 给出一个01环,问最少经过多少次相邻互换使得所有的0聚在一坨,所有的1聚在一坨. Solution 源自:LCF Solution ...
- CDOJ 1292 卿学姐种花 暴力 分块 线段树
卿学姐种花 题目连接: http://acm.uestc.edu.cn/#/problem/show/1292 Description 众所周知,在喵哈哈村,有一个温柔善良的卿学姐. 卿学姐喜欢和她一 ...
- 嘉馨学姐又双叒叕来吃包子了 QDUOJ 模拟 尺度法
嘉馨学姐又双叒叕来吃包子了 QDUOJ 模拟 尺度法 点我进入OJ题目详情 题意 给你一串数,让你求长度最长的子串,这个字串满足里面没有重复出现的数字. 解题思路 使用一个标记数组,来标记每个数的第一 ...
- vijosP1903学姐的实习工资
描述 学姐去实习了, 一共实习了N天, 每一天都可以得到实习工资V[i], 这里V[1..N]被看作是整数序列.因为学姐很厉害, 所以V[1..N]是不下降的.也就是说学姐每天的工资只会越来越多, 不 ...
- qwb与学姐 (带秩并查集)
qwb与学姐 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 149 Solved: 54[Submit][Status][Web Board] Des ...
- UESTC 1324:卿学姐与公主(分块)
http://acm.uestc.edu.cn/#/problem/show/1324 题意:…… 思路:卿学姐的学习分块例题. 分块是在线处理区间问题的类暴力算法,复杂度O(n*sqrt(n)),把 ...
- cdoj 1328 卿学姐与诡异村庄 Label:并查集 || 二分图染色
卿学姐与诡异村庄 Time Limit: 4500/1500MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...
- Vijos1901 学姐的钱包
描述 学姐每次出门逛街都要带恰好M元钱, 不过她今天却忘记带钱包了.可怜的doc只好自己凑钱给学姐, 但是他口袋里只有一元钱.好在doc的N位朋友们都特别有钱, 他们答应与doc作一些交换.其中第i位 ...
- cdoj 1329 卿学姐与魔法 优先队列
卿学姐与魔法 Time Limit: 1200/800MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Sta ...
随机推荐
- Java之戳中痛点 - (5)switch语句break不能忘以及default不同位置的用法
先看一段代码: public class Test{ public static void main(String[] args){ System.)); } } public static Stri ...
- hive向表格中插入数据并分析语句
1,---导入mds_imei_month_info ; //最大的动态分区表 set hive.support.concurrency=false; //是否支持并发 ; //each mapper ...
- 解决mysql报错:- Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ'
mysql执行报错: - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated c ...
- Tomcat启动报错:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet
测试tomcat的comet Java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet 异常 因为工程 ...
- MyBatis系列四 之 智能标签进行查询语句的拼接
MyBatis系列四 之 智能标签进行查询语句的拼接 使用Foreach进行多条件查询 1.1 foreach使用数组进行多条件查询 在MyBatis的映射文件中进行如下配置 <!--根据数组进 ...
- 04-plis属性列表
源代码下载链接:04-plis属性列表.zip27.8 KB // MJPerson.h // // MJPerson.h // 04-plis属性列表 // // Created by a ...
- Sequence(ST表)(洛谷P2048)
超级钢琴 知识储备 在做这道题前,我们先要了解一下ST表(一种离线求区间最值的方法) ST表使用DP实现的,其查询复杂度为O(1). 那么我们怎么用DP实现呢?? 首先,我们设立一个状态f[i][j] ...
- CVE-2017-5521: Bypassing Authentication on NETGEAR Routers(Netgear认证绕过漏洞)
SpiderLabs昨天发布的漏洞, 用户访问路由器的web控制界面尝试身份验证,然后又取消身份验证,用户就会被重定向到一个页面暴露密码恢复的token.然后通过passwordrecovered.c ...
- 关于chkrootkit 检查 INFECTED: Possible Malicious Linux.Xor.DDoS installed
chkrootkit检测时,发现一个Xor.DDoS内容,内容如下...Searching for Linux.Xor.DDoS ... INFECTED: Possible Malicious Li ...
- Django-models,继承AbstractUser类
1.UserInfo类继承了Django模型自带的User类,需要导入AbstractUser 2.然后在settings.py中配置