题意

题目链接

Sol

maya普及组的dp都要想很长时间,我真是越来越菜了qwq

设$f[i][j]$表示当前到第$i$个位置,剩下$j$个左括号没被匹配

转移的时候判断一下即可

  1. /*
  2.  
  3. */
  4. #include<cstdio>
  5. #include<cstring>
  6. #include<algorithm>
  7. #include<map>
  8. #include<vector>
  9. #include<set>
  10. #include<queue>
  11. #include<cmath>
  12. #define Pair pair<int, int>
  13. #define MP(x, y) make_pair(x, y)
  14. #define fi first
  15. #define se second
  16. #include<set>
  17. #include<vector>
  18. //#define int long long
  19. #define LL long long
  20. //#define getchar() (p1 == p2 && (p2 = (p1 = buf) + fread(buf, 1, 1<<22, stdin), p1 == p2) ? EOF : *p1++)
  21. //char buf[(1 << 22)], *p1 = buf, *p2 = buf;
  22. using namespace std;
  23. const int MAXN = 1e5 + , INF = 1e9 + , mod = 1e9 + ;
  24. const double eps = 1e-;
  25. inline int read() {
  26. char c = getchar(); int x = , f = ;
  27. while(c < '' || c > '') {if(c == '-') f = -; c = getchar();}
  28. while(c >= '' && c <= '') x = x * + c - '', c = getchar();
  29. return x * f;
  30. }
  31. int N;
  32. char s[MAXN];
  33. int f[][MAXN];
  34. int main() {
  35. // freopen("a.in", "r", stdin);
  36. // freopen("c.out", "w", stdout);
  37. N = read();
  38. scanf("%s", s + );
  39. int o = ; f[][] = ;
  40. for(int i = ; i <= N; i++, o ^= ) {
  41. //(f[i][j] += f[i - 1][j]) %= mod;
  42. memset(f[o], , sizeof(f[o]));
  43. if(s[i] == '(') {
  44.  
  45. for(int j = ; j <= i; j++)
  46. (f[o][j] += f[o ^ ][j]) %= mod, (f[o][j] += f[o ^ ][j - ]) %= mod;
  47. }
  48.  
  49. else {
  50.  
  51. for(int j = ; j <= i; j++)
  52. (f[o][j] += f[o ^ ][j]) %= mod, (f[o][j] += f[o ^ ][j + ]) %= mod;
  53. }
  54.  
  55. }
  56. printf("%d", (f[o ^ ][] - + mod) % mod);
  57. return ;
  58. }
  59. /*
  60. 2
  61. ()
  62.  
  63. 3
  64. ())
  65.  
  66. 8
  67. )(()(())
  68. */

牛客NOIP普及组R1 C括号(dp)的更多相关文章

  1. 牛客NOIP提高组R1 C保护(主席树)

    题意 题目链接 Sol Orz lyq 我们可以把一支军队(u, v)拆分为两个(u, lca)和(v, lca) 考虑一个点x,什么时候军队对它有贡献,肯定是u或v在他的子树内,且lca在他的子树外 ...

  2. 牛客NOIP提高组R1 A中位数(二分)

    题意 题目链接 Sol 很神仙的题目啊,考场上只会$n^2$的暴力.. 考虑直接二分一个$mid$,我们来判断最终答案是否可能大于$x$. 判断的时候记录一下前缀最小值即可, 设$s[i]$表示$1- ...

  3. nowcoder(牛客网)普及组模拟赛第一场 解题报告

    蒟蒻我可能考了一场假试 T1 绩点 这题没什么好说的,应该是只要会语言的就会做. T2 巨大的棋盘 一个模拟题吧qwq,但是要注意取模的时候先加上n或者m再取模,要不然会错的. #include< ...

  4. 牛客NOIP提高组(三)题解

    心路历程 预计得分:$30 + 0 + 0 = 30$ 实际得分:$0+0+0= 0$ T1算概率的时候没模爆long long了... A 我敢打赌这不是noip难度... 考虑算一个位置的概率,若 ...

  5. 牛客NOIP提高组(二)题解

    心路历程 预计得分:100 + 40 + 30 = 170 实际得分:100 + 30 + 0 = 130 T2有一个部分分的数组没开够RE了. T3好像是思路有点小问题.. 思路没问题,实现的时候一 ...

  6. 牛客NOIP暑期七天营-提高组1

    牛客NOIP暑期七天营-提高组1 链接 A 边权可为0就排序建一条链子. 但是边权不为0 除了第一个有0的不行. x连向上一个比他小的数. 期间判断有无解. #include <bits/std ...

  7. 18/9/9牛客网提高组Day1

    牛客网提高组Day1 T1 中位数 这好像是主席树??听说过,不会啊... 最后只打了个暴力,可能是n2logn? 只过了前30%  qwq #include<algorithm> #in ...

  8. [NOIP普及组2011]装箱问题

    目录 链接 博客链接 题目链接 题目内容 题目描述 格式 输入 输出 样例 输入 输出 前缀知识 题解 题目名称:装箱问题 来源:2011年NOIP普及组 链接 博客链接 CSDN 洛谷博客 题目链接 ...

  9. [NOIP普及组2001]最大公约数和最小公倍数问题

    目录 链接 博客链接 题目链接 题目内容 题目描述 格式 输入 输出 数据 样例 输入 输出 说明 题目名称:最大公约数和最小公倍数问题 来源:2001年NOIP普及组 链接 博客链接 CSDN 洛谷 ...

随机推荐

  1. 从select机制谈到epoll机制

    目录 为什么要用select机制 等待队列 唤醒操作 什么是select机制 关于fd_set select使用 poll函数 为什么select效率较低 什么是epoll epoll机制实现思路 e ...

  2. 73th LeetCode Weekly Contest Domino and Tromino Tiling

    We have two types of tiles: a 2x1 domino shape, and an "L" tromino shape. These shapes may ...

  3. windows下运行jar

    run.bat 1. javaw运行 @echo offstart javaw -Xmx128m -Xms64m -jar testlog.jarexit 2.java运行 @echo offjava ...

  4. MD5WLBUtil

    import java.io.UnsupportedEncodingException; import java.security.NoSuchAlgorithmException; import j ...

  5. Spring学习(一)IOC

     Spring是一站式框架: (1)Spring在javaee三层结构中,每一层都提供不同的解决技术. web层:SpringMVC service层:Spring的Ioc dao层:Spring的J ...

  6. iOS开发 - 3D Touch 应用系列一 - Quick Actions 创建桌面 Icon 快捷方式

    个言 很久没发随笔了,有一年多了吧.期间也曾想继续去写随笔,但是因为各种原因而耽搁了.最近又想了一下,还是有很多东西想要写,想要分享,想要记录下来的东西.之后我也会不断写随笔,但不止于 iOS 的方向 ...

  7. Zookeeper崩溃恢复过程(Leader选举)

    1. 崩溃恢复 a). leader选择过程可以保证新leader是ZXID最大的节点 b). ZAB协议确保丢弃那些只在leader上被提出的事务,场景 leader发出PROPOSAL收到ACK, ...

  8. java程序中路径问题

    JAVA中获取路径: 1.在web中取得路径:   以工程名为TEST为例: (1)得到包含工程名的当前页面全路径:request.getRequestURI() 结果:/TEST/test.jsp  ...

  9. ElasticSearch最新版本下载地址

    直接访问官方很慢,打不开,找到这个下载方法: ElasticSearch下载地址: https://download.elastic.co/elasticsearch/elasticsearch/el ...

  10. Educational Codeforces Round 51 (Rated for Div. 2)

    做了四个题.. A. Vasya And Password 直接特判即可,,为啥泥萌都说难写,,,, 这个子串实际上是忽悠人的,因为每次改一个字符就可以 我靠我居然被hack了???? %……& ...