PAT乙级1052 卖个萌 (20 分)

Posted 辉小歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT乙级1052 卖个萌 (20 分)相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
题目地址

#include<cstdio>
#include<iostream>
#include<string>
#include<vector>
using namespace std;
string s; 
vector<string> ve[5];
int main(void)
{
	for(int i=0;i<3;i++)
	{
		getline(cin,s); 
		while(s.size())
		{
			int l=s.find('[');
			int r=s.find(']');
             if(r==-1) break;
			ve[i].push_back(s.substr(l+1,r-l-1));
			s=s.substr(r+1);
		}
	}
	ve[3]=ve[1],ve[4]=ve[0];
	int k;cin>>k;
	for(int i=0;i<k;i++) 
	{
		string temp;
		bool flag=true;
		for(int j=0;j<5;j++)
		{
			int x; cin>>x;
			if(j==1) temp+="(";
			if(x>ve[j].size()||x<=0) flag=false;
			else temp+=ve[j][x-1];
			if(j==3) temp+=")";
		}
		if(flag) cout<<temp;
		else cout<<"Are you kidding me? @\\\\/@";
        cout<<endl;
	}
	return 0;
}
#include<cstdio>
#include<iostream>
#include<string>
#include<vector>
#include<map>
using namespace std;
string s;
vector<string> ve[5];
map<string,int>mp1,mp2,mp3;
int main(void)
{
	for(int i=0;i<3;i++)
	{
		getline(cin,s);
		for(int j=0;j<s.size();j++)
		{
			if(s[j]=='[') 
			{
                 string temp;
                 while(j<s.size()&&s[++j]!=']') temp+=s[j];
				 ve[i].push_back(temp);
				 if(i==0) mp1[temp]=1;
				 if(i==1) mp2[temp]=1;
				 if(i==2) mp3[temp]=1;	
			}		
		}
	}
	int t; cin>>t;
	for(int i=0;i<t;i++)
	{
		int a,b,c,d,e ; cin>>a>>b>>c>>d>>e;
		a--,b--,c--,d--,e--;
       if(a<ve[0].size()&&b<ve[1].size()&&c<ve[2].size()&&d<ve[1].size()&&e<ve[0].size())
        {
            if(mp1[ve[0][a]]&&mp2[ve[1][b]]&&mp3[ve[2][c]]&&mp2[ve[1][d]]&&mp1[ve[0][e]]) 
			    printf("%s(%s%s%s)%s\\n",ve[0][a].c_str(),ve[1][b].c_str(),ve[2][c].c_str(),ve[1][d].c_str(),ve[0][e].c_str());
		    else 
			    cout<<"Are you kidding me? @\\\\/@"<<endl;
        }
        else cout<<"Are you kidding me? @\\\\/@"<<endl;
	}
	return 0;
}

以上是关于PAT乙级1052 卖个萌 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

PAT-乙级-1052 卖个萌

PAT Basic 1052 卖个萌 (20 分)

PAT 1052. 卖个萌 (20)

PAT 1052. 卖个萌

PAT 1052 卖个萌

PAT——1052. 卖个萌