LOJ P3952 时间复杂度 noip 暴力 模拟
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 暴力 模拟的更多相关文章
- luogu P3952 时间复杂度 模拟
题目链接 luogu P3952 时间复杂度 题解 直接模拟即可 注意不要直接return 我真是naive ...... 代码 #include<map> #include<sta ...
- P3952 时间复杂度
P3952 时间复杂度 题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机 ...
- 洛谷 P3952 时间复杂度 解题报告
P3952 时间复杂度 题目描述 小明正在学习一种新的编程语言A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会 ...
- NOIP前模拟赛总结
NOIP前模拟赛总结 from 2018.10.7 to ??? Date Name Score(Rank) Problems 2018.10.7 McfXH AK Contest 42(?) 期望得 ...
- bnuoj 20832 Calculating Yuan Fen(暴力模拟)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=20832 [题意]: 给你一串字符串,求一个ST(0<ST<=10000),对字符串中字符 ...
- POJ 1013 小水题 暴力模拟
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 35774 Accepted: 11 ...
- hdu_1006 Tick and Tick(暴力模拟)
hdu1006 标签(空格分隔): 暴力枚举 好久没有打题了,退队了有好几个月了,从心底不依赖那个人了,原来以为的爱情戏原来都只是我的独角戏.之前的我有时候好希望有个人出现,告诉自己去哪里,做什么,哪 ...
- 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 ...
- 美团2018年CodeM大赛-资格赛 分数 暴力模拟
链接:https://www.nowcoder.com/acm/contest/138/D来源:牛客网 小胖参加了人生中最重要的比赛——MedoC资格赛.MedoC的资格赛由m轮构成,使用常见的“加权 ...
随机推荐
- mybatis的配置文件中<selectKey>标签问题
1.mybatis的配置文件中,使用sequence生成主键 未执行add方法之前,主键未生成(null):刚执行add之后,主键即生成(212) 这里的重点是,一旦执行add方法,配置文件中的sel ...
- windows 10 部署flask web
起因 本来想这用django 写一个web 应用程序,便于管理mongodb的数据.结果django 不直接支持mongodb……又没时间研究NoSQL.于是想着随便整个api吧…… 于是先用flas ...
- Android平台介绍
一.Android平台介绍 什么是智能手机 具有独立的操作系统,独立的运行空间,可以由用户自行安装软件.游戏.导航等第三方应用程序,并可以通过移动通讯网络来实现无线网络接入的手机类型总称. 智能手机操 ...
- 【codeforces】【比赛题解】#864 CF Round #436 (Div.2)
做出了4题,还不错,可惜还是掉rating……能保持在蓝名已经不错了. 题目跳转链接. [A]公平的游戏 题意: Petya和Vasya在玩游戏.他们有n张卡片(n是偶数).每张卡片上有一个整数. 游 ...
- 17 Go Slices: usage and internals GO语言切片: 使用和内部
Go Slices: usage and internals GO语言切片: 使用和内部 5 January 2011 Introduction Go's slice type provides a ...
- 从Runoob的Django教程学到的
Windows 10家庭中文版,Python 3.6.4,Django 2.0.3 这个月开始学习Django,从网上找到了RUNOOB.COM网站找到了一份Django教程,在“认真”学习之后,初步 ...
- C# 托管资源 与 非托管资源
C# 托管资源 与 非托管资源 托管资源一般是指被CLR控制的内存资源,这些资源的管理可以由CLR来控制,.NET可以自动进行回收,主要是指托管堆上分配的内存资源.例如程序中分配的对象,作用域内的变量 ...
- ZOJ 3469 Food Delivery(区间DP好题)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4255 题目大意:在x轴上有n个客人,每个客人每分钟增加的愤怒值不同. ...
- 使用mui框架打开页面的几种不同方式
1.创建子页面: list.html就是index.html的子页面,创建代码比较简单,如下: mui.init({ subpages: [{ url: 'list.html', //子页面HTML地 ...
- new[] 到底做了什么?
#include<iostream> #include<cstdlib> using std::cout; using std::endl; using std::hex; c ...