博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 4915 Parenthese sequence _(:зゝ∠)_ 哈哈
阅读量:6708 次
发布时间:2019-06-25

本文共 1083 字,大约阅读时间需要 3 分钟。

哦,我没做

#include 
#include
#include
const int N = 1000000 + 10;char s[N];int d[N], num[N];int main() { while (~scanf("%s", s)) { memset(num, 0, sizeof num); int len = strlen(s); int f = 1, v = 0; for (int i = 0; i < len; ++i) { if (s[i] == '(' || s[i] == '?

') ++ v; else -- v; d[i] = v; if (v < 0) { f = 0; break; } } if ((len & 1) || (d[len - 1] & 1)) f = 0; else if (f && d[len - 1] != 0) { for (int i = len - 2; i >= 0; --i) d[i] = std::min(d[i], d[i + 1]); v = d[len - 1] / 2; int cnt = 0; for (int i = 0; i < len && cnt != v; ++i) { if (s[i] != '?

') continue; if (d[i] - 2 * (cnt + 1) >= 0) num[i] = ++cnt; } if (cnt != v) { f = 0; } else { int pre = 1; for (int i = 0; i < len && f != 2; ) { if (num[i] != pre) ++ i; else { int j; for (j = i + 1; j < len; ++j) { if (num[j] == pre + 1) break; if (s[j] != '?') continue; if (d[j] - pre * 2 >= 0) { f = 2; break; } } i = j; ++ pre; } } } } if (f == 0) puts("None"); else if (1 == f) puts("Unique"); else puts("Many"); } return 0; }

转载地址:http://euilo.baihongyu.com/

你可能感兴趣的文章
学习dubbo(7):基于dubbo的分布式系统架构介绍
查看>>
Oracle数据库账号频繁被锁定的原因排查
查看>>
java基础——字符串操作
查看>>
如何在 "万一的 Delphi 博客" 回复自动格式化的着色代码?
查看>>
Oracle小数点保留问题
查看>>
Objective-C之成魔之路【17-内存管理】
查看>>
Protostuff一键序列化工具、Protobuf JAVA实现
查看>>
微信小程序 - does not have a method ......
查看>>
车牌识别。EasyPR OpenALPR
查看>>
ttserver 常见操作
查看>>
通过 mysqldump 搭建基于 gtid MySQL 5.7 主从复制
查看>>
dojo框架学习笔记-1
查看>>
strcpy函数简易实现
查看>>
如何升级mac os x自带的ruby?
查看>>
python参数解析
查看>>
了解 MyCat
查看>>
一道SQL面试题~
查看>>
Java学习,今天正式开始,记录每天的点点滴滴
查看>>
mysql 的权限体系介绍
查看>>
mysql count 和sum 的区别
查看>>