首页 > 其他 > 详细

PAT(Basic Level) Practice : 1052 卖个萌 (20分)

时间:2020-09-26 09:26:33      阅读:47      评论:0      收藏:0      [点我收藏+]

1052 卖个萌 (20分)

测试点1的坑

题目说“这里只给出符号在相应集合中的序号(从 1 开始)”
说是这么说,但是他有可能给你的是0或者是负数
不能仅仅判断序号小于集合中元素个数
还要判断序号是否大于0

代码

#include <iostream>
#include"stdlib.h"
#include <vector>
#include <string>
#include <cstdio>
//scanf printf防止超时
#include <algorithm>
//vector的sort
#include <sstream>
//转换
using namespace std;

#include<iomanip>
//精度

#include<cmath>
//round四舍五入取整



int main()
{
    string hand,eye,mouth;
    getline(cin,hand);
    getline(cin,eye);
    getline(cin,mouth);
    vector<string>h,e,m;

    for(int i=0;i<hand.length();i++)
    {
        if(hand[i]==‘[‘)
        {
            for(int j=i+1;j<hand.length();j++)
            {
                if(hand[j]==‘]‘)
                {
                    string t=hand.substr(i+1,j-i-1);
                    h.push_back(t);
                    break;
                }
            }
        }
    }
    /*
    for(int i=0;i<h.size();i++)
    {
        cout<<h[i]<<endl;
    }*/

    for(int i=0;i<eye.length();i++)
    {
        if(eye[i]==‘[‘)
        {
            for(int j=i+1;j<eye.length();j++)
            {
                if(eye[j]==‘]‘)
                {
                    string t=eye.substr(i+1,j-i-1);
                    e.push_back(t);
                    break;
                }
            }
        }
    }
    /*for(int i=0;i<e.size();i++)
    {
        cout<<e[i]<<endl;
    }*/

    for(int i=0;i<mouth.length();i++)
    {
        if(mouth[i]==‘[‘)
        {
            for(int j=i+1;j<mouth.length();j++)
            {
                if(mouth[j]==‘]‘)
                {
                    string t=mouth.substr(i+1,j-i-1);
                    m.push_back(t);
                    break;
                }
            }
        }
    }

    /*for(int i=0;i<m.size();i++)
    {
        cout<<m[i]<<endl;
    }*/

    int num;
    cin>>num;
    for(int i=0;i<num;i++)
    {
        int n1,n2,n3,n4,n5;
        scanf("%d %d %d %d %d",&n1,&n2,&n3,&n4,&n5);
        if(n1>0&&n1<=h.size()&&n2>0&&n2<=e.size()&&n3>0&&n3<=m.size()&&n4>0&&n4<=e.size()&&n5>0&&n5<=h.size())
            cout<<h[n1-1]<<"("<<e[n2-1]<<m[n3-1]<<e[n4-1]<<")"<<h[n5-1]<<endl;
        else
            cout<<"Are you kidding me? @\\/@"<<endl;
    }
    return 0;
}

PAT(Basic Level) Practice : 1052 卖个萌 (20分)

原文:https://www.cnblogs.com/zchq/p/13733162.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!