CF1214C

题意:

给你一个括号序列,问你时候能仅移动相邻的两个元素,使括号序列合法。

解法:

可以先考虑普通括号序列怎么做

这道题只交换相邻的两个元素,所以如果中间左括号和右括号的差值大于2时,括号就不合法。

CODE:

#include<bits/stdc++.h>

using namespace std; 

#define LL long long
#define N 200010 char s[N];
int n,l,r,cnt; int main() {
scanf("%d",&n);
for (int i = 0 ; i < n ; i++) {
cin>>s;
if(s[i] == '(') l++;
else r++;
}
for(int i = 0 ; i < n ; i++) {
if(s[i] == '(') cnt++;
else cnt--;
if(cnt < -1) {
puts("No");
// system("pause");
return 0;
}
}
if(l != r) puts("No");
else puts("Yes");
//system("pause");
return 0;
}

CF1214C的更多相关文章

随机推荐

  1. Java数据结构Vetor

    Java数据结构Vector /** * <html> * <body> * <P> Copyright JasonInternational</p> ...

  2. 使用Java Executor框架实现多线程

    本文将涵盖两个主题: 通过实现Callable接口创建线程 在Java中使用Executor框架 实现Callable接口 为了创建一段可以在线程中运行的代码,我们创建了一个类,然后实现了Callab ...

  3. 使用Mmap系统调用进行硬件地址访问

    Mmap系统调用: Mmap函数是内存映射函数,负责把文件内容映射到进程的虚拟内存空间,通过对这段内存的读取和修改,来实现堆文件的读取和修改,而不需要再调用read,write等操作. 原型如下: 其 ...

  4. linux环境下composer的安装与使用

    一.下载 Composer(安装前请务必确保已经正确安装了 PHP.打开命令行窗口并执行 php -v 查看是否正确输出版本号.) 1.下载安装脚本 - composer-setup.php - 到当 ...

  5. tornado 常见问题处理

    1 怎么获取从页面中的传值 使用 self.get_body_argument tornado的参数存储在self.request.body内,通过json以后就可以直接取值,当初我在前端使用angu ...

  6. c#创建目录和文件夹,数据写入并生成txt文件

    c#创建目录: // 获取程序的基目录.System.AppDomain.CurrentDomain.BaseDirectory // 获取模块的完整路径.System.Diagnostics.Pro ...

  7. c# 执行调用Oracle Procedure传参及回传值

    ////定義參數               //IDataParameter[] parameters =               //             {               ...

  8. http服务详解(3)

    https https:http over sslSSL会话的简化过程 (1) 客户端发送可供选择的加密方式,并向服务器请求证书 (2) 服务器端发送证书以及选定的加密方式给客户端 (3) 客户端取得 ...

  9. Linux下Mysql每天自动备份

    新建目录 mkdir -p /data/mysqlbal/data mkdir -p /data/mysqlbal/scripts mkdir -p /data/mysqlbal/logs 创建备份脚 ...

  10. 【转】Golang关于channel传递引用引发的坑

    原文: https://studygolang.com/articles/12310/comment/17923 ------------------------------------------- ...