• PAT 1039. 到底买不买(20)


    题目链接:https://www.patest.cn/contests/pat-b-practise/1039

    解题思路:自己刚开始想的是用两个字符串来做,搜别人题解的时候发现别人一种很好的解题思路,是用string做的,感觉做的很巧妙

    具体的代码如下:

    #include<bits/stdc++.h>
    
    using namespace std;
    
    int main()
    {
        string s1,s2;
        cin>>s1>>s2;
        int len1,len2;
        len1=s1.length();
        len2=s2.length();
        int sum=0;
        bool flag=1;
        for(int i=0;i<len2;i++)
        {
            int place=s1.find(s2[i],0);
            if(place!=-1)
            {
                s1.erase(s1.begin()+place);
            
            }
            else
            {
                flag=0;
                sum++;
            }
        }    
        if(!flag)  
        {
            cout<<"No ";
            cout<<sum;
        }
        else
        {
            cout<<"Yes ";
            cout<<len1-len2;
        }
        
        return 0;
    } 
    if(!flag) printf("NO %d",sum);
        else printf("Yes %d",len1-len2);

    最后的代码输出用下面的代码输出答案就是报只是部分正确,而用c++的cout输出就是AC,不知道为什么,等以后想明白再添上吧!

  • 相关阅读:
    JSON和Object数组在js中的转换
    Raphael绘制箭头arrow
    Web后台框架开发
    数据库开发
    docker
    git
    linux
    正则表达式工具
    python模拟ls命令
    python3基础
  • 原文地址:https://www.cnblogs.com/gaoss/p/5372774.html
Copyright © 2020-2023  润新知