PTA乙级 (1052 卖个萌 (20分),(substr函数))

Posted

tags:

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

一、C++中substr函数用法

#include<string>
#include<iostream>
using namespace std;
int main()
{
  string s("12345asdf");
  string a = s.substr(0,5);     //获得字符串s中从第0位开始的长度为5的字符串
  cout << a << endl;
}
//输出结果为:12345

二、1052 卖个萌 (20分)

https://pintia.cn/problem-sets/994805260223102976/problems/994805273883951104

#include <cstdio>
#include <cstring>
#include <string>
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
vector<string> v1,v2,v3;
string str1,str2,str3;
void init(vector<string> &v,string s)
{
	int k=0,start;
	for(int i=0;i<s.length();i++)
	{
		if(s[i]==‘[‘)
		{
			start=i+1;
			k=0;
		}
		else if(s[i]==‘]‘)
		{
			v.push_back(s.substr(start,k));
		}
		else k++;
	}
}
int main()
{
	string s;
	s.clear();
	getline(cin,s);
	init(v1,s);
	s.clear();
	getline(cin,s);
	init(v2,s);
	s.clear();
	getline(cin,s);
	init(v3,s);
	s.clear();
	int arr[10]={0},k;
	int len1=v1.size(),len2=v2.size(),len3=v3.size();
	bool flag=true;
	cin>>k;
	for(int i=0;i<k;i++)
	{
		for(int j=0;j<5;j++)
{ cin>>arr[j]; if(arr[j]<1) flag=false; } if(arr[0]>len1||arr[1]>len2||arr[2]>len3||arr[3]>len2||arr[4]>len1) flag=false; if(!flag) cout<<"Are you kidding me? @\\/@"<<endl; else cout<<v1[arr[0]-1]<<"("<<v2[arr[1]-1]<<v3[arr[2]-1]<<v2[arr[3]-1]<<")"<<v1[arr[4]-1]<<endl; } return 0; }

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

PAT-乙级-1052 卖个萌

PAT Basic 1052 卖个萌 (20 分)

1052. 卖个萌 (20)

1052. 卖个萌 (20)

PAT 1052. 卖个萌 (20)

PAT 1052. 卖个萌