这道题在考试时看到感觉与第一题放反了位置(因为我还没有看到第一题是结论题)

对于每个语句进行栈的模拟,而如果有语法错误就特判。

对于每一条for语句我们将其与栈顶元素连边,复杂度是1的我们不用考虑,如果复杂度是n我们就算他的贡献加一。

这样我们求最大复杂度就相当于求一颗子树的最大深度,当然如果这条语句不合法我们就将其整颗子树贡献算为0。

                         #include<bits/stdc++.h>
using namespace std;
int top;
struct node
{
int to,nex;
}e[];
int cnt,head[];
void add(int x,int y)
{
e[++cnt].to=y;e[cnt].nex=head[x];head[x]=cnt;
}
int inf=1e9;
struct poin
{
int l,r,id;
}a[];
stack<poin>qq;
int dfs(int x)
{
int pre=;
int ma=;
if(a[x].l!=inf&&a[x].r==inf)pre=;
if(a[x].l>a[x].r)return ;
for(int i=head[x];i;i=e[i].nex)
{
ma=max(ma,dfs(e[i].to));
}
return ma+pre;
}
char s[];
bool b[];
int q[];
int main()
{
int t,n;
scanf("%d",&t);
while(t--)
{
cnt=;
memset(head,,sizeof(head));
memset(b,,sizeof(b));
memset(q,,sizeof(q));
scanf("%d",&n);top=;while(!qq.empty())qq.pop();
scanf("%s",s);int x=;bool flag=;
if(s[]>=''&&s[]<='')
for(int i=;s[i]>=''&&s[i]<='';++i)
x=x*+s[i]-'';
else{
for(int i=;s[i]>=''&&s[i]<='';++i)
x=x*+s[i]-'';
}
if(s[]!='n')x=;
for(int i=;i<=n;++i)
{
scanf("%s",&s);
if(s[]=='F')
{
scanf("%s",&s);int d=s[]-'a'+;
if(b[d]){
flag=;
}int u=,v=;int w=,z=;
b[d]=;q[++top]=d;
scanf("%s",&s);
if(s[]=='n')w=inf;
else{while(s[u]>=''&&s[u]<='')w=w*+s[u]-'',++u;}
scanf("%s",&s);
if(s[]=='n')z=inf;
else{while(s[v]>=''&&s[v]<='')z=z*+s[v]-'',++v;}
a[i].l=w;a[i].r=z;a[i].id=i; if(qq.empty())
add(,i);
else add(qq.top().id,i);
qq.push(a[i]); }
else
{
if(qq.empty())flag=;
else{b[q[top]]=;--top;qq.pop();}
}
}
if(!qq.empty())flag=;
if(flag){
puts("ERR");continue;
}
int ans=dfs();
if(ans!=x)puts("No");
else puts("Yes");
}
return ;
}

考试时我没有求max而是算的sum

还好noip数据水让我混了90分,谢天谢地。

NOIP2017 D1T2时间复杂度的更多相关文章

  1. NOIP2017 d1t2 时间复杂度

    题目传送门:洛谷P3952 大模拟不解释 #include<iostream> #include<cstdio> #include<cmath> #include& ...

  2. [NOIP2017 TG D1T2]时间复杂度

    题目大意:略 题解:模拟 卡点:1.数组忘清空 (考场代码风格独特...) C++ Code: #include<cstdio> #include<cstring> #incl ...

  3. luogu 3952 时间复杂度

    noip2017 D1T2 时间复杂度 某zz选手考场上写了1.5h 考完之后发现自己写的是错的 但是结果A了??? 题目大意: 一种新的编程语言 A++ 给出一个程序只有循环语句 并给出这个程序的时 ...

  4. [SinGuLaRiTy] NOIP2017 提高组

    [SinGuLaRiTy-1048] Copyright (c) SinGuLaRiTy 2018. All Rights Reserved. NOIP2017过了这么久,现在2018了才找到寒假这么 ...

  5. NOIP2017 题解

    QAQ--由于没报上名并没能亲自去,自己切一切题聊以慰藉吧-- 可能等到省选的时候我就没有能力再不看题解自己切省选题了--辣鸡HZ毁我青春 D1T1 小凯的疑惑 地球人都会做,懒得写题解了-- D1T ...

  6. [NOIP补坑计划]NOIP2017 题解&做题心得

    终于做完了…… 场上预计得分:?(省一分数线:295) 由于看过部分题解所以没有预计得分qwq 题解: D1T1 小凯的疑惑 题面 震惊!一道小学奥数题竟难倒无数高中考生! 欢迎大家以各种姿势*和谐* ...

  7. SXOI2018 游记

    noilinux@Capella:~$ cd /Memories/ noilinux@Capella:/Memories$ rm *SXOI* rm:是否删除有写保护的普通文件 "SXOI2 ...

  8. 【openjudge】【字符串+模拟】1777:文件结构“图”

    [题目传送门:]戳 [描述:] 在计算机上看到文件系统的结构通常很有用.Microsoft Windows上面的"explorer"程序就是这样的一个例子.但是在有图形界面之前,没 ...

  9. NOIP 考前研究

    NOIP 2017 试题研究 D1T1 小凯的疑惑 (45 min) 看到题面,大概是推数学公式. 先打暴力表,观察 \(a,b\) 与 \(n\) 的关系.猜想 \(a×b−a−b\). 引理:对于 ...

随机推荐

  1. 使用 jQuery 避免鼠标双击

    介绍 当用户双击DOM对象(例如按钮和链接等)时,对于用户交互一直是个麻烦的问题. 幸运的是, jQuery 提供了一个相当棒的解决方法. 那就是.one(). .one()这个方法是做什么的? 它附 ...

  2. 【BZOJ4870】组合数问题(计数DP,快速幂)

    题意: 1 ≤ n ≤ 10^9, 0 ≤ r < k ≤ 50, 2 ≤ p ≤ 2^30 − 1 思路:From http://blog.csdn.net/qq_33229466/artic ...

  3. java对象与json互转

    package com.liveyc; import java.io.StringWriter; import org.junit.Test; import com.fasterxml.jackson ...

  4. BeanPostProcessor的五大接口

    BeanPostProcessor 关于对象初始化前后的回调. public interface BeanPostProcessor { //该方法在bean实例化完毕(且已经注入完毕),在after ...

  5. Spring是什么+控制反转和依赖注入

    Spring是一个开源框架,是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架. 原因: (1)通过控制反转(IOC)达到松耦合,IOC也就是把控制权交出去,在使用中直接得到对象 (2)提 ...

  6. 《深入理解Java虚拟机》笔记--第二章、Java内存区域与内存溢出异常

    Java程序员把内存的控制权交给了Java虚拟机.在Java虚拟机内存管理机制的帮助下,程序员不再需要为每一个new操作写对应的delete/free代码,而且不容易出现内存泄露和溢出. 虚拟机在执行 ...

  7. PHP发送邮件:如何自定义reply-to头部以及附件

    虽然有现成的类库(如PEAR)可以很方便地实现附件添加和发送,但是对于一些小站点(服务器硬件.网站规模都不理想),安装PEAR可能会带来不必要的负担,降低WEB程序运行效率. 通过对邮件格式的认识,我 ...

  8. 2017百度春招<不等式排列>

    题目: 度度熊最近对全排列特别感兴趣,对于1到n的一个排列,度度熊发现可以在中间根据大小关系插入合适的大于和小于符号(即 '>' 和 '<' )使其成为一个合法的不等式数列.但是现在度度熊 ...

  9. /proc文件夹介绍

    Linux系统上的/proc目录是一种文件系统,即proc文件系统.与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过 ...

  10. fastdfs5.11+centos7.2 按照部署(一)【转载】

    1.绪论 最近要用到fastDFS,所以自己研究了一下,在搭建FastDFS的过程中遇到过很多的问题,为了能帮忙到以后搭建FastDFS的同学,少走弯路,与大家分享一下.FastDFS的作者淘宝资深架 ...