码迷,mamicode.com
首页 > 其他好文 > 详细

BZOJ3016 [Usaco2012 Nov]Clumsy Cows

时间:2014-12-01 18:53:21      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   os   sp   on   

蒟蒻还是刷刷水。。。(不要问我这么沙茶的题为何要写题解)

Orz 海之树:"考虑每一个右括号必须要有一个在它之前的左括号相配对,所以用sum记录到当前位置位置还没有配对的左括号的数量。

如果为负数这说明必须有一个右括号要变为左括号,即ans++且sum+=2(因为少了一个右括号的同时多了一个左括号)。

最后加上剩余的未配对的左括号的数量的二分之一即为答案。"

 

bubuko.com,布布扣
 1 /**************************************************************
 2     Problem: 3016
 3     User: rausen
 4     Language: C++
 5     Result: Accepted
 6     Time:36 ms
 7     Memory:804 kb
 8 ****************************************************************/
 9  
10 #include <cstdio>
11  
12 using namespace std;
13  
14 int ans, sum;
15  
16 int main() {
17     char ch = getchar();
18     while (ch == ( || ch == )) {
19         if (ch == () ++sum;
20         else --sum;
21         if (sum < 0) ++ans, sum += 2;
22         ch = getchar();
23     }
24     ans += sum >> 1;
25     printf("%d\n", ans);
26     return 0;
27 }
View Code

 

BZOJ3016 [Usaco2012 Nov]Clumsy Cows

标签:style   blog   http   io   ar   color   os   sp   on   

原文地址:http://www.cnblogs.com/rausen/p/4135655.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!