https://www.luogu.org/problemnew/show/P3952

模拟,日常认识到自己zz。

 #include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<vector>
using namespace std;
const int maxn=;
char ch[];
int n,ans,ke;
int f[maxn]={},x[maxn]={},l[maxn]={},r[maxn]={};
int vis[maxn][]={},fa[maxn]={},dep[maxn]={};
void dfs(int num,int dui){
if(num>n){if(dui)ke=;return;}
if(f[num]==){
if(dui==){ke=;return;}
dfs(num+,fa[dui]);
return;
}
if(vis[dui][x[num]]){ke=;return;}
for(int i=;i<=;i++)
vis[num][i]=vis[dui][i];
fa[num]=dui;vis[num][x[num]]=;
if(l[num]<=r[num]&&!((l[num]==)^(r[num]==))){
dep[num]=dep[dui];
ans=max(ans,dep[num]);
dfs(num+,num);
}
else if(r[num]==){
dep[num]=dep[dui]+;
ans=max(ans,dep[num]);
dfs(num+,num);
}
else{
int k=num+,z=,du=num;
while(z){
if(!f[k]){
--z;du=fa[du];
}
else{
if(vis[du][x[k]])ke=;
for(int i=;i<=;i++)
vis[k][i]=vis[du][i];
fa[k]=du;vis[k][x[k]]=;du=k;
++z;
}
++k;
}k--;
if(k<n+){
dfs(k+,dui);
}
else{
ke=;return;
}
}
}
int main(){
int T;scanf("%d",&T);
while(T-->){
memset(f,,sizeof(f));
memset(fa,,sizeof(fa));
memset(vis,,sizeof(vis));
memset(dep,,sizeof(dep));
scanf("%d",&n); scanf("%s",ch); int k=;
if(ch[]!='') for(int i=;ch[i]!=')';i++) k=k*+ch[i]-'';
for(int i=;i<=n;i++){
scanf("%s",ch);
if(ch[]=='F'){
f[i]=;
scanf("%s",ch);
x[i]=ch[]-'a'+;
scanf("%s",ch); l[i]=;
if(ch[]!='n'){
for(int j=;ch[j]>=''&&ch[j]<='';j++)l[i]=l[i]*+ch[j]-'';
}
scanf("%s",ch); r[i]=;
if(ch[]!='n'){
for(int j=;ch[j]>=''&&ch[j]<='';j++)r[i]=r[i]*+ch[j]-'';
}
}else f[i]=;
}
ans=;ke=;dfs(,);
if(ke)printf("ERR\n");
else if(ans==k)printf("Yes\n");
else printf("No\n");
}
return ;
}

LOJ P3952 时间复杂度 noip 暴力 模拟的更多相关文章

  1. luogu P3952 时间复杂度 模拟

    题目链接 luogu P3952 时间复杂度 题解 直接模拟即可 注意不要直接return 我真是naive ...... 代码 #include<map> #include<sta ...

  2. P3952 时间复杂度

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

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

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

  4. NOIP前模拟赛总结

    NOIP前模拟赛总结 from 2018.10.7 to ??? Date Name Score(Rank) Problems 2018.10.7 McfXH AK Contest 42(?) 期望得 ...

  5. bnuoj 20832 Calculating Yuan Fen(暴力模拟)

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=20832 [题意]: 给你一串字符串,求一个ST(0<ST<=10000),对字符串中字符 ...

  6. POJ 1013 小水题 暴力模拟

    Counterfeit Dollar Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 35774   Accepted: 11 ...

  7. hdu_1006 Tick and Tick(暴力模拟)

    hdu1006 标签(空格分隔): 暴力枚举 好久没有打题了,退队了有好几个月了,从心底不依赖那个人了,原来以为的爱情戏原来都只是我的独角戏.之前的我有时候好希望有个人出现,告诉自己去哪里,做什么,哪 ...

  8. hihoCoder #1871 : Heshen's Account Book-字符串暴力模拟 自闭(getline()函数) (ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction B) 2018 ICPC 北京区域赛现场赛B

    P2 : Heshen's Account Book Time Limit:1000ms Case Time Limit:1000ms Memory Limit:512MB Description H ...

  9. 美团2018年CodeM大赛-资格赛 分数 暴力模拟

    链接:https://www.nowcoder.com/acm/contest/138/D来源:牛客网 小胖参加了人生中最重要的比赛——MedoC资格赛.MedoC的资格赛由m轮构成,使用常见的“加权 ...

随机推荐

  1. 【译】第八篇 SQL Server代理使用外部程序

    本篇文章是SQL Server代理系列的第八篇,详细内容请参考原文 在这一系列的上一篇,学习了如何用SQL Server代理作业活动监视器监控作业活动和查看作业历史记录.在实时监控和管理SQL Ser ...

  2. jquery easyui 扩展验证

    $.extend($.fn.validatebox.defaults.rules, {  idcard : {// 验证身份证          validator : function(value) ...

  3. DRM/KMS 基本组件介绍

    Each DRM device provides access to manage which monitors and displays are currently used and what fr ...

  4. ### mysql系统结构_3_Mysql_Learning_Notes

    mysql系统结构_3_Mysql_Learning_Notes 存储层,内存结构 全局(buferpool) 只分配一次 全局共享 连接/会话(session) 针对每个会话/线程分配 按需动态分配 ...

  5. BZOJ4840 NEERC2016 Binary Code

    Problem BZOJ Solution 可能是因为快要省选了,所以最近更博的频率好像高了点_(:зゝ∠)_ 每个字符串最多有两个状态,然后要满足一些依赖关系,考虑2sat.可以先把字符串的结束节点 ...

  6. HTML 多张图片无缝连接

    <table border="0" cellspacing="0" cellpadding="0" style="heigh ...

  7. php-fpm和cgi,并发响应的理解以及高并发和多线程的关系

    首先搞清楚php-fpm与cgi的关系 cgi cgi是一个web server与cgi程序(这里可以理解为是php解释器)之间进行数据传输的协议,保证了传递的是标准数据. php-cgi php-c ...

  8. (一)问候 HtmlUnit

    第一节: HtmlUnit 简介 htmlunit 是一款开源的java 页面分析工具,读取页面后,可以有效的使用htmlunit分析页面上的内容.项目可以模拟浏览器运行,被誉为java浏览器的开源实 ...

  9. 用户说体验 | 关于阿里百川HotFix你需要了解的一些细节

    最近很火的热修复技术,无意中了解到阿里百川也在做,而且Android.iOS两端都支持,所以决定试一试.试用一段时间后,感觉还不错,主要是他们有一个团队在不断维护更新这个产品,可以看到他们的版本更新记 ...

  10. CVE-2012-0158基于exp分析

    CVE-2012-0158这个洞我之前分析过,漏洞战争这本书里也写过,但是都是用poc分析的,我这次找了一个弹计算器的exp来分析,感觉用poc和用exp还是不一样的,从exp分析要比从poc分析更复 ...