zoukankan      html  css  js  c++  java
  • hdoj-1870-愚人节的礼物(栈)

    愚人节的礼物

    Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 6396    Accepted Submission(s): 3883


    Problem Description
    四月一日快到了,Vayko想了个愚人的好办法——送礼物。

    嘿嘿。不要想的太好,这礼物可没那么简单。Vayko为了愚人。准备了一堆盒子,当中有一个盒子里面装了礼物。盒子里面能够再放零个或者多个盒子。

    如果放礼物的盒子里不再放其它盒子。

    用()表示一个盒子。B表示礼物。Vayko想让你帮她算出愚人指数,即最少须要拆多少个盒子才干拿到礼物。


     

    Input
    本题目包括多组測试,请处理到文件结束。


    每组測试包括一个长度不大于1000,仅仅包括'(',')'和'B'三种字符的字符串,代表Vayko设计的礼物透视图。
    你能够如果,每一个透视图画的都是合法的。

     

    Output
    对于每组測试,请在一行里面输出愚人指数。
     

    Sample Input
    ((((B)()))()) (B)
     

    Sample Output
    4 1
     解题思路:
            用到了栈的思想,这道题最后须要输出的是栈的长度。

    代码:
    #include<stdio.h>
    #include<string.h>
    #include<stack>
    using namespace std;
    char gift[1100];
    int main()
    {
    	int i,j;
    	int len;
    	while(scanf("%s",gift)!=EOF)
    	{
    		len=strlen(gift);
    		stack<char>s;
    		for(i=0;i<len&&gift[i]!='B';i++)
    		{
    			if(s.empty())
    			    s.push(gift[i]);
    			else
    			{
    				if(s.top()=='('&&gift[i]==')')
    				    s.pop();
    				else
    				    s.push(gift[i]);
    			}
    		}
    		printf("%d
    ",s.size());
    	}
    	return 0;
    }
    


  • 相关阅读:
    (译).NET4.X并行任务Task需要释放吗?
    微软面向高并发应用而推出的新程序库——TPL Dataflow
    C# 5.0 Async函数的提示和技巧
    内存泄露——文章
    AJAX POST请求中参数以form data和request payload形式在php中的获取方式
    NodeJS中间层搭建
    HTML5上传预览
    laravel 图片上传 ajax 方式
    抽奖程序
    IText 生成页脚页码
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7089172.html
Copyright © 2011-2022 走看看