HDU1870 愚人节的礼物

HDU1870 愚人节的礼物

题目

在这里插入图片描述

AC代码

注意每次都要初始化栈☁️

#include<iostream>
#include<algorithm>
#include<cstring>
#include<stack>
using namespace std;
int main()
{
	
	char s[1100];
	while(cin>>s)
	{
		stack<char> q; 
		for(int i=0;i<strlen(s);i++)
		{
			if(s[i]=='(') q.push(s[i]);
			else if(s[i]==')') q.pop();
			else if(s[i]=='B') break; 
		}
		cout<<q.size()<<endl;
	}
	return 0;
}

普通法

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main()
{
	int t1,t2,t3;
	char s[1100];
	while(cin>>s)
	{
		t1=0;
		for(int i=0;i<strlen(s);i++)
		{
			if(s[i]=='(') t1++;
			else if(s[i]==')') t1--;
			else if(s[i]=='B') break; 
		}
		cout<<t1<<endl;
	}
	return 0;
}

这个当时写的有点麻烦了,是个悲伤的故事 🍉 😐

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main()
{
	int t1,t2,t3;
	char s[1100];
	while(cin>>s)
	{
		t1=0;
		t2=0;
		
		for(int i=0;i<strlen(s);i++)
		{
			if(s[i]=='(' && s[i+1]=='(') t1++;
			else if(s[i]=='(' && s[i+1]=='B') t1++;
			else if(s[i]==')' && s[i+1]=='B') break;
			
			else if(s[i]=='B') break;
		}
		
		for(int i=strlen(s)-1;i>=0;i--)
		{
			if(s[i]==')' && s[i-1]==')') t2++;
			else if(s[i]==')' && s[i-1]=='B') t2++;
			else if(s[i]=='(' && s[i-1]=='B') break;
			else if(s[i]=='B') break;
		}
		
		t3=min(t1,t2);
		
		cout<<t3<<endl;
	}
	return 0;
}
posted @ 2021-07-12 17:28  斯文~  阅读(11)  评论(0)    收藏  举报

你好!