https://www.nowcoder.com/acm/contest/201/J

Description:
  给你一行括号,定义了括号合格的形式,然后Q次询问,问你这个区间内括号是否合格

Solution:
  利用栈模拟,栈内记录括号的编号,如果新来的括号可以匹配栈顶元素的括号,那么就弹出,否则入栈,用一个数组L记录每个括号

完成匹配后对应的括号编号(所以括号编号是唯一的)

最后对于询问l,r,这个区间里数的个数必须要是偶数,然后,L[R] == L[l-1]才可以,这个表示该区间前面的能消的消去后所对应的第一个id,等于该区间最右边能消的消去后对应的id,id唯一所以这个区间一定可以消完~,而且不会用到区间外的括号,如果用到区间外的括号就不会等于L[l-1]啦

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = 1e6 + 1e2;
int A[maxn];
int stk[maxn],stkid;
int l[maxn];
int main()
{
int n,m,q;
while(~scanf("%d%d%d",&n,&m,&q))
{
stkid = 0;
int op;
for(int i = 1;i <= n;++i)
{
scanf("%d",&A[i]);
}
for(int i = 1;i <= n;++i)
{
if(!stkid)
{
stk[++stkid] = i;
}
else
{
op = A[i];
int op2 = A[stk[stkid]];
if(op / 2 == op2 / 2 && op2 + 1 == op)
{
stkid--;
}
else
{
stk[++stkid] = i;
}
}
l[i] = stk[stkid];
}
int L,R;
l[0] = 0;
for(int i = 1;i <= q;++i)
{
scanf("%d%d",&L,&R);
if((R-L) % 2 == 1)
{
if(l[L-1] == l[R])
printf("Yes\n");
else
printf("No\n");
}
else
printf("No\n");
}
}
return 0;
}

10.1牛客J题的更多相关文章

  1. 【牛客 错题集】Linux系统方面错题合集

    前言:牛客Linux322道全部刷完,有些题目较老,甚至考核5系统,现在7都出来了几年了 = = 还有些题目解析的很好部分也摘录了进来.很多涉及嵌入式开发的选择题同样的摘录的作为了解使用 ------ ...

  2. 句子反转——牛客刷题(java)

    题目描述: 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格. 比如: (1) “hello xiao mi”-> “mi xia ...

  3. 输出单项链表中倒数第k个结点——牛客刷题

    题目描述: 输入一个单向链表,输出该链表中倒数第k个结点 输入.输出描述: 输入说明:1.链表结点个数 2.链表结点的值3.输入k的值 输出说明:第k个结点指针 题目分析: 假设链表长度为n,倒数第k ...

  4. 2019牛客多校第四场 I题 后缀自动机_后缀数组_求两个串de公共子串的种类数

    目录 求若干个串的公共子串个数相关变形题 对一个串建后缀自动机,另一个串在上面跑同时计数 广义后缀自动机 后缀数组 其他:POJ 3415 求两个串长度至少为k的公共子串数量 @(牛客多校第四场 I题 ...

  5. 牛客OI月赛12-提高组题解

    牛客OI月赛12-提高组 当天晚上被\(loli\)要求去打了某高端oj部分原创的模拟赛,第二天看了牛客的题觉得非常清真,于是就去写了 不难发现现场写出\(260\text{pts}\)并不需要动脑子 ...

  6. 牛客网论坛最具争议的Java面试成神笔记,牛客网下载量已突破十万

    程序员内部一直流传这一句话: 面试看牛客 刷题看力扣 牛客网作为国内最牛的程序员面试网站,一直在程序员内部颇负盛名,其中用户更是卧虎藏龙! 有国内一线大厂的企业招聘 还有一些低调的互联网大牛实力就和天 ...

  7. 牛客小白月赛12 J 月月查华华的手机 (序列自动机模板题)

    链接:https://ac.nowcoder.com/acm/contest/392/J 来源:牛客网 题目描述 月月和华华一起去吃饭了.期间华华有事出去了一会儿,没有带手机.月月出于人类最单纯的好奇 ...

  8. 2020牛客寒假算法基础集训营2 J题可以回顾回顾

    2020牛客寒假算法基础集训营2 A.做游戏 这是个签到题. #include <cstdio> #include <cstdlib> #include <cstring ...

  9. 2020牛客寒假算法基础集训营1 J题可以回顾回顾

    2020牛客寒假算法基础集训营1 这套题整体来说还是很简单的. A.honoka和格点三角形 这个题目不是很难,不过要考虑周全,面积是1,那么底边的长度可以是1也可以是2, 注意底边1和2会有重复的, ...

随机推荐

  1. gb2312,gbk,utf8的区别

    GB2312编码大约包含6000多汉字(不包括特殊字符),编码范围为第一位b0-f7,第二位编码范围为a1-fe(第一位为cf时,第二位为a1-d3),计算一下汉字个数为6762个汉字.当然还有其他的 ...

  2. Python Selenium系列学习

    以下记录刚接触Python Selenium操作Web UI的学习问题: 1.python selenium三种等待方式: ①强制等待:time.sleep(value):设置等待最简单的方法就是强制 ...

  3. CSL 的神奇序列(猜猜猜?)

    链接:https://ac.nowcoder.com/acm/contest/551/F来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 524288K,其他语言10485 ...

  4. 混合现实开发教程unity2017

    共52节,MP4格式,英字,大小1GB 扫码时备注或说明中留下邮箱 付款后如未回复请至https://shop135452397.taobao.com/ 联系店主

  5. 100-days: twenty-four

    Title: No word of a lie: scientists rate(评出) the world's biggest peddlers of bull(说瞎话的人,扯淡的人) bullsh ...

  6. 4-19 css属性

    1. margin 简写属性在一个声明中设置所有外边距属性.该属性可以有 1 到 4 个值. 说明 这个简写属性设置一个元素所有外边距的宽度,或者设置各边上外边距的宽度. 块级元素的垂直相邻外边距会合 ...

  7. python词频统计及其效能分析

    1) 博客开头给出自己的基本信息,格式建议如下: 学号2017****7128 姓名:肖文秀 词频统计及其效能分析仓库:https://gitee.com/aichenxi/word_frequenc ...

  8. Python __dict__属性详解

    本文转载自 https://www.cnblogs.com/alvin2010/p/9102344.html 感谢 //偏执 大佬 我们都知道Python一切皆对象,那么Python究竟是怎么管理对象 ...

  9. Oracle 存储过程笔记.

    业务说明: 主要用于计算采购加权平均价.入参为年份和月份,首先判断输入的年月是否已经结账,如果已经结账就将所有物料和供应商的采购加权平均价返回. 要点说明: 1.如何在存储过程中定义临时表 答:ora ...

  10. Python 列表(list)的使用

    文章目录 一.创建list 二.访问list中元素 三.更新元素 四.删除元素 五.求list长度 六.连接列表 七.截取列表 八.复制列表 一.创建list myList = [2,3,1,5,6, ...