string oj题目练习

nefu 1019 strange string

#include <bits/stdc++.h>
using namespace std;

int main()
{
    string s1;
    while(cin>>s1)
    {
        stack<char>vis;
        for(int i=0;i<s1.size();i++)
        {
            if(vis.empty())vis.push(s1[i]);
            else
            {
                char ch=vis.top();
                if(ch!=s1[i])vis.push(s1[i]);
            }
        }
        if(vis.size()==3)//题目要求三个字母两两不同,所以还要判断第1 3个是否相同
        {
            char ch=vis.top();
            vis.pop();
            vis.pop();
            if(ch==vis.top())cout<<"NO"<<endl;
            else cout<<"YES"<<endl;
        }
        else cout<<"NO"<<endl;
    }
    return 0;
}

nefu 903 字符串去星

#include <bits/stdc++.h>
using namespace std;

int main()
{
    string s1;
    while(cin>>s1)
    {
        int sum=0;
        for(int i=0;i<s1.size();i++)
        {
            if(s1[i]=='*'){sum++;s1.erase(i,1);i--;}//表示删除下标为i开始1个元素
        }
        cout<<sum<<" "<<s1<<endl;
    }
    return 0;
}

nefu 31 字符串合并

#include <bits/stdc++.h>
using namespace std;

int main()
{
    string a,b;
    while(cin>>a>>b)
        cout<<a+b<<endl;//直接相加
    return 0;
}
发布了13 篇原创文章 · 获赞 0 · 访问量 183
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 游动-白 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览