哦,我没做

#include <cstdio>
#include <cstring>
#include <algorithm>
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;
}

HDU 4915 Parenthese sequence _(:зゝ∠)_ 哈哈的更多相关文章

  1. hdu 4915 Parenthese sequence(模拟)2014多培训学校5现场

    Parenthese sequence                                                                     Time Limit: ...

  2. HDU 4915 Parenthese sequence

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4915 解题报告:从前往后遍历一次,每次判断')'的数目是不是满足 n < (i +1)/ 2,从 ...

  3. hdu 4915 Parenthese sequence 多校第五场

    推断一个序列是否是有效是简单的. 可是推断序列是不是有多个解会出问题. 那么从i=0 ~l 假设读到问号,推断该问号成为(能否有效,该问号为)是否有效. 假设都有效,则必有多个解. 假设都无效,则无解 ...

  4. hdu 4915 Parenthese sequence--2014 Multi-University Training Contest 5

    主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4915 Parenthese sequence Time Limit: 2000/1000 MS (Ja ...

  5. HDU 4937 Lucky Number 规律题_(:зゝ∠)_

    把全部合法的进制打出来会发现合法的进制都是在 n/3 n/4 n/5的边上 然后暴力边上的进制数.. #include <cstdio> #include <set> type ...

  6. HDU 4839 The Game of Coins _(:зゝ∠)_

    The Game of Coins mark: #include"cstdio" #include"iostream" #include"queue& ...

  7. HDU 4876 ZCC loves cards _(:зゝ∠)_ 随机输出保平安

    GG,,,g艹 #include <cstdio> #include <iostream> #include <algorithm> #include <st ...

  8. UVALive 6663 Count the Regions 离散+bfs染色_(:зゝ∠)_

    题目链接:option=com_onlinejudge&Itemid=8&page=show_problem&problem=4675">点击打开链接 gg.. ...

  9. 转:HIBERNATE一些_方法_@注解_代码示例---写的非常好

    HIBERNATE一些_方法_@注解_代码示例操作数据库7步骤 : 1 创建一个SessionFactory对象 2 创建Session对象 3 开启事务Transaction : hibernate ...

随机推荐

  1. 给一个非常长的字符串str 另一个字符集比方{a,b,c} 找出str 里包括{a,b,c}的最短子串。要求O(n)

    给一个非常长的字符串str 另一个字符集比方{a,b,c} 找出str 里包括{a,b,c}的最短子串.要求O(n). 比方,字符集是a,b,c,字符串是abdcaabcx,则最短子串为abc. 设置 ...

  2. 【ALearning】第二章 Androidproject知识介绍

    本章介绍了主要的初步Androidproject成立了一个开发环境.为了Android意识的整体项目和理解.本章包含Android开发环境的搭建.第一Android工程Hello World与Andr ...

  3. PHP监測memcache服务端的执行状况

    . 代码例如以下,代码为memcache官方代码,引用在此.做一下简单的说明: 1.设置username和password define('ADMIN_USERNAME','admin'); // A ...

  4. Ajax改动购物车

    1.购物车类的设计 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2hpeWVxaWFuZ2xkaA==/font/5a6L5L2T/fontsize/4 ...

  5. Python的Tkinter将窗口置顶

    root = Tk()root.wm_attributes('-topmost',1)

  6. IIS总提示输入用户名和密码

    解决办法: 第一步,在"运行"中输入"gpedit.msc"调出组策略设置. 找到计算机配置-管理模块-windows 组件-internet控制面板-安全页- ...

  7. coding.net解决github上下载速度慢问题

    由 于众所周知的原因,从github下载项目很慢,一般不超过10kb(我的是20兆公司网)例如我下载OpenRefine,没有3个小时搞不定.所以想 到了一个方法来解决他.就是使用国内其他代码托管平台 ...

  8. hotmail邮箱pop3server设置方法

    hotmail邮箱 的POP3/SMTP功能仅仅向Hotmail Plus的用户开放,普通用户想要使用这一功能的话,得进行一些特别的设置.如今这一功能总算面向全部的用户开放了,虽然微软官方还没宣布这一 ...

  9. Knockout应用开发指南 第八章:简单应用举例(2)

    原文:Knockout应用开发指南 第八章:简单应用举例(2) 5   Control types 这个例子,对view model没有什么特殊的展示,只是展示如何绑定到各种元素上(例如,select ...

  10. SVN的命令行操作

    最近在进行svn二次开发,使用的是svnkit.看了很多svnkit的api,渐渐发现都是和SVN的命令行操作对应的.顺便研究一下svn的命名行操作. 1.将文件checkout到本地目录: 基本命令 ...