CF918C The Monster
题目链接:http://codeforces.com/contest/918/problem/C
知识点: 贪心
解题思路:
枚举起点(当起点就是\(')'\)时直接跳过)并在此基础上遍历字符串,用一个\(nowmin\)和一个\(nowmax\)来记录当前\('('\)最多有\(nowmax\)个,最少有\(nowmin\)个。当遍历到\('('\)时,\(nowmin++,nowmax++\);当遍历到\('?'\)时,\(nowmin--,nowmax++\)(因为\('?'\)既有可能是\('('\),也有可能是\(')'\));当遍历到\(')'\)时,\(nowmin++,nowmax++\)。当\(nowmax<0\)时就可以结束对这个起点的字符串的遍历,当\(nowmin<0\)时将其置零,当\(nowmin==0\)并且\(nowmax>=0\)并且当前遍历长度为偶数时,答案数加一。
思路来自magicalCycloidea.
AC代码:
#include <bits/stdc++.h> using namespace std;
const int maxn = ;
char inp[maxn];
int main()
{
scanf("%s",inp);
int len=strlen(inp);
int ans=;
for(int i=;i<len;i++){
if(inp[i]==')') continue;
int nowmin=,nowmax=;
for(int j=i,l=;j<len;j++,l++){
if(inp[j]=='(') nowmax++,nowmin++;
else if(inp[j]=='?') nowmax++,nowmin--;
else nowmax--,nowmin--;
if(nowmax<) break;
nowmin=max(,nowmin);
if(l%==&&nowmin==&&nowmax>=) ans++;
}
}
printf("%d\n",ans);
return ;
}
CF918C The Monster的更多相关文章
- hdu4950 Monster (水题)
4950 Monster Monster Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others ...
- codeforces 487A A. Fight the Monster(二分)
题目链接: A. Fight the Monster time limit per test 1 second memory limit per test 256 megabytes input st ...
- 【BZOJ】【3856】Monster
又是一道水题…… 重点是分情况讨论: 首先我们很容易想到,如果a*k-b*(k+1)>0的话那么一定能磨死Monster. 但即使不满足这个条件,还有可能打死boss: 1.h-a<1也就 ...
- HDU 4950 Monster (水题)
Monster 题目链接: http://acm.hust.edu.cn/vjudge/contest/123554#problem/I Description Teacher Mai has a k ...
- Codeforces Round #278 (Div. 1) A. Fight the Monster 暴力
A. Fight the Monster Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/487/ ...
- Codeforces Round #328 (Div. 2) B. The Monster and the Squirrel 打表数学
B. The Monster and the Squirrel Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/c ...
- 前端性能优化工具--DOM Monster
当我们开发web应用的时候,性能是一个永远不能回避的问题.其实对于DOM的性能调试也是一个不可或缺的过程.使用DOM monster你只需要添加到你的”书签中“,在任何需要调试的页面点击这个书签,它就 ...
- HDU 2616 Kill the monster (暴力搜索 || 终极全阵列暴力)
主题链接:HDU 2616 Kill the monster 意甲冠军:有N技能比赛HP有M怪物,技能(A,M),能伤害为A.当怪兽HP<=M时伤害为2*A. 求打死怪兽(HP<=0)用的 ...
- 3856: Monster
3856: Monster Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 351 Solved: 161[Submit][Status][Discuss ...
随机推荐
- Scala教程之:Future和Promise
文章目录 定义返回Future的方法 阻塞方式获取Future的值 非阻塞方式获取Future的值 Future链 flatmap VS map Future.sequence() VS Future ...
- Uva 1754 Posterize
#include<bits/stdc++.h> using namespace std; #define rep(i,a,b) for(int i=a;i<=b;++i) #defi ...
- Codeforces 1323 div2题解ABC
A. Even Subset Sum Problem 签到题 #include <bits/stdc++.h> using namespace std; template <type ...
- USACO Training Section 1.2 双重回文数 Dual Palindrom
题目描述 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做"回文数".例如,12321就是一个回文数,而77778就不是.当然,回文数的首和尾都应是非零的,因此0220就 ...
- 5分钟入门pandas
pandas是在数据处理.数据分析以及数据可视化上都有比较多的应用,这篇文章就来介绍一下pandas的入门.劳动节必须得劳动劳动 1. 基础用法 以下代码在jupyter中运行,Python 版本3. ...
- ZABBIX自动发现Redis端口并监控
由于一台服务器开启许多Redis实例,如果一台一台的监控太耗费时间,也非常容器出错.这种费力不讨好的事情我们是坚决杜绝的,幸好ZABBIX有自动发现功能,今天我们就来用该功能来监控我们的Redis实例 ...
- 学习vue第五节,vue中使用class和style的css样式
vue中使用class样式 数组 <h1 :class="['red', 'thin']">这是一个H1</h1> 数组中使用三元表达式 <h1 :c ...
- 自动化运维工具Ansible之Roles测验详解
Ansible Roles 详解与实战案例 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务数据乱放: 3. 该用 ...
- SSM家庭财务管理系统
包含[项目源码+论文]:http://mp.toutiao.com/preview_article/?pgc_id=6805534721838154254
- Android将库导入到build.gradle
如图