传送门

惊叹考场dubuffdubuffdubuff。

这题还没有梭哈难啊233.

直接按照题意模拟就行了。

代码:

#include<bits/stdc++.h>
using namespace std;
int T,n,typ,dep[105];
bool f;
inline int calc(char s[]){
	int len=strlen(s);
	int ret=0,pos=0;
	for(;pos!=len;++pos)if(isdigit(s[pos]))break;
	while(isdigit(s[pos])&&pos!=len)ret=(ret<<3)+(ret<<1)+(s[pos]^48),++pos;
	return ret;
}
int main(){
	freopen("lx.in","r",stdin);
	scanf("%d",&T);
	while(T--){
		stack<char>S;
		set<char>exi;
		char s[10];
		int tot=0,now=0,ans=0;
		memset(dep,0,sizeof(dep));
		while(!S.empty())S.pop();
		exi.clear(),scanf("%d%s",&n,&s),typ=0,f=1;
		if(s[2]!='1'){
			int len=strlen(s);
			for(int i=4;i<len;++i){
				if(!isdigit(s[i]))break;
				typ=(typ<<3)+(typ<<1)+(s[i]^48);
			}
		}
		int i=1;
		for(;i<=n;++i,ans=max(ans,dep[now])){
			scanf("%s",s);
			if(s[0]=='E'){
				if(!S.size()){f=0;break;}
				exi.erase(S.top()),S.pop(),--now;
			}
			else{
				scanf("%s",s);
				char x[5],y[5];
				scanf("%s%s",x,y);
				if(exi.count(s[0])){f=0;break;}
				S.push(s[0]),exi.insert(s[0]),++now;
				if(dep[now-1]==-1){dep[now]=-1;continue;}
				if(x[0]=='n'){
					if(y[0]=='n'){dep[now]=dep[now-1];continue;};
					dep[now]=-1;continue;
				}
				if(y[0]=='n'){dep[now]=dep[now-1]+1;continue;}
				int X=calc(x),Y=calc(y);
				if(X<=Y){dep[now]=dep[now-1];continue;}
				else dep[now]=-1;
			}
		}
		++i;
		for(;i<=n;++i){
			scanf("%s",s);
			if(s[0]=='F')scanf("%s",s),scanf("%s",s),scanf("%s",s);
		}
		if(S.size())f=0;
		if(f){
			if(typ^ans)puts("No");
			else puts("Yes");
		}
		else puts("ERR");
	}
	return 0;
}

2018.11.02 洛谷P3952 时间复杂度(模拟)的更多相关文章

  1. 洛谷 - P3952 - 时间复杂度 - 模拟

    https://www.luogu.org/problemnew/show/P3952 这个模拟,注意每次进入循环的时候把新状态全部入栈,退出循环的时候就退栈. 第一次就错在发现ERR退出太及时,把剩 ...

  2. 2018.11.02 洛谷P2661 信息传递(拓扑排序+搜索)

    传送门 按照题意模拟就行了. 先拓扑排序去掉不在环上面的点. 剩下的都是简单环了. 于是都dfsdfsdfs一遍求出最短的环就行. 代码: #include<bits/stdc++.h> ...

  3. 洛谷P3952 时间复杂度(模拟)

    题意 题目链接 Sol 咕了一年的题解..就是个模拟吧 考场上写的递归也是醉了... 感觉一年自己进步了不少啊..面向数据编程的能力提高了不少 #include<bits/stdc++.h> ...

  4. 2018.11.02 洛谷P2831 愤怒的小鸟(状压dp)

    传送门 状压一眼题. 直接f[i]f[i]f[i]表示未选择状态为iii时的最小次数. 然后考虑现在怎么转移. 显然可以直接枚举消掉某一个点或者某两个点,复杂度O(n22n)O(n^22^n)O(n2 ...

  5. 2018.11.02 洛谷P2312 解方程(数论)

    传送门 直接做肯定会TLETLETLE. 于是考验乱搞能力的时候到了. 我们随便选几个质数来checkcheckcheck合法解,如果一个数无论怎么checkcheckcheck都是合法的那么就有很大 ...

  6. 洛谷 P3952 时间复杂度 解题报告

    P3952 时间复杂度 题目描述 小明正在学习一种新的编程语言A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会 ...

  7. 计蒜客 时间复杂度 (模拟) & 洛谷 P3952 时间复杂度

    链接 : Here! 思路 : 这是一道大模拟, 区分好情况就没问题了 循环构成部分 : $F , x , i , j$ 和 $E$ , 需要注意的是 $i , j$, - 分析 $i, j$ 的情况 ...

  8. 洛谷P3952 时间复杂度【字符串】【模拟】

    题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序 ...

  9. 洛谷 P3952 时间复杂度【模拟】

    把No写成NO,WA了一发-- 现在看这题也不难-- 用一个栈,记一下前面F的字母,是否合法,合法的有多长,每次入栈弹栈即可 #include<iostream> #include< ...

随机推荐

  1. Python+Selenium学习--打印当前页面的title及url

    场景 测试中,访问1个页面然后判断其title是否符合预期是很常见的1个用例,所谓用例不够,title来凑就是这个道理.更具体一点,假设1个页面的title应该是'hello world', 那么可以 ...

  2. 随机数、方法重载和System.out.println()的理解

    1.编写一个方法,使用以上算法生成指定数目(比如1000个)的随机数. package testradom; public class testradom { public static void m ...

  3. access导入报错 请求筛选模块被配置为拒绝超过请求内容长度的请求

    原因:access文件过大 解决:用压缩和修复把收缩一下access文件 报错截图如下:

  4. linux虚拟机ping不通主机和外网(包括刚装系统遇到的一些问题)

    自己ubuntu系统安装了一个virtualBox虚拟机,里面又装了一个ubuntu-server系统: 1.先设置一下字符集,因为一开始装系统的时候选择的是中文,但里面始终无法支持中文,那就算了,反 ...

  5. HTML DOM 事件对象

    HTML DOM 事件对象 由 youj 创建,小路依依 最后一次修改 2016-08-04 HTML DOM 事件 HTML DOM 事件 HTML DOM 事件允许Javascript在HTML文 ...

  6. vue 环境搭建

    目前我们的项目前端都采用的是vue js为了方便开发过程中前后端同事进行功能对接,建议每个同事都准备好前后端环境(前端的同事参考文档第二部分,后端同事请参考第一部分),只要保持前后端代码是最新的就可以 ...

  7. 什么是MVVM模式

    问题引入1 场景一:团队辛辛苦苦完成了一个项目,抱着激动的心情去给用户做demo,而用户给你的反馈是UI很不满意,要重新修改,否则拒绝验收.大规模修改UI,晴天霹雳!2 场景二:产品在一家客户上线运行 ...

  8. Informatica_(1)安装

    安装961 server和client 0.informatica卸载保证服务(informatica9.6.1)在关闭状态:卸载客户端,应用程序-->informatica-->unin ...

  9. 1、javaweb学习之配置文件web.xml

    今天这里主要讲述javaweb中的配置文件web.xml中的内容及其作用,都是基础部分,对于初学者需要好好掌握理解. 简单配置: <servlet>    <servlet-name ...

  10. Android开发之利用ViewPager实现在Activity或Fragment中引入别的布局文件实现滑动并进行页面跳转

    有些时候经常可以看到其他APP中有一排的图标,可以在一个界面中滑来滑去,并且图标可以进行点击事件进行页面的跳转.这里对这种方法的实现做出总结. 首先看一下图片: 下面这两种图片是在一个Fragment ...