第二期STL题解

北城以北 提交于 2020-01-19 19:51:12

很水的题。
1.

#include <iostream>
#include <cstdio>
using namespace std;

int main(){
    string s, r;
    cin >> s >> r;
    if(s > r)
        cout << ">" << endl;
    else if(s==r)
        cout << "=" << endl;
    else
        cout << "<" << endl;
    return 0;
}
#include <iostream>
#include <algorithm>
using namespace std;

int main(){
    int n;
    cin >> n;
    getchar();
    while(n--)
    {
        string s, t = "";
        getline(cin, s);
        for(int i = (int)s.size()-1; i >= 0; i--)
        {
            if(i == 0)
            {
                t+=s[i];
                reverse(t.begin(), t.end());
                cout << t << endl;
                t = "";
            }
            else if(s[i] == ' ')
            {
                reverse(t.begin(), t.end());
                cout << t << ' ';
                t = "";
            }
            else
                t+=s[i];
        }
    }
    return 0;
}
#include <iostream>
#include <stack>
using namespace std;

int main(){
    int l = 0, r = 0, flag = 0;
    string s;
    stack<char> st;
    getline(cin, s);
    for(int i = 0; i < s.size(); i++)
    {
        if(s[i] == '[' || s[i] == '(' || s[i] == '{')
            l++;
        if(s[i] == ']' || s[i] == ')' || s[i] == '}')
            r++;
    }
    if(l != r)
        cout << l << ' ' << r << endl << "NO" << endl;
    else
    {
        for(int i = 0; i < s.size(); i++)
        {
            if(s[i] == '[' || s[i] == '(' || s[i] == '{')
                st.push(s[i]);
            else if(s[i] == ']' || s[i] == '}' || s[i] == ')')
            {
                if((s[i] == ']' && st.top() == '[') || (s[i] == '}'&& st.top() == '{') || (s[i] == ')' && st.top() == '('))
                {
                    st.pop();
                }
                else flag = 1;
            }
        }
        if(flag)
            cout << l << ' ' << r << endl << "NO" << endl;
        else
            cout << l << ' ' << r << endl << "YES" << endl;
    }
    return 0;
}
#include <iostream>
#include <queue>
using namespace std;

int main()
{
    int n, t, flag = 0;
    queue<int> odd, eve;
    cin >> n;
    while(n--)
    {
        cin >> t;
        if(t%2==0)
            eve.push(t);
        else
            odd.push(t);
    }
    while(!odd.empty() || !eve.empty())
    {
        if(!odd.empty())
        {
            if(flag == 0) flag = 1;
            else cout << ' ';
            cout << odd.front();
            odd.pop();
        }
        if(!odd.empty())
        {
            if(flag == 0) flag = 1;
            else cout << ' ';
            cout << odd.front();
            odd.pop();
        }
        if(!eve.empty())
        {
            if(flag == 0) flag = 1;
            else cout << ' ';
            cout << eve.front();
            eve.pop();
        }
    }
    return 0;
}
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;

int main(){
    int pos, n;
    string s, t, r;
    getline(cin, s);
    cin >> pos >> n;
    t = s;
    t.erase(pos,n);
    r = t;
    reverse(r.begin(), r.end());
    if(r==t)
        cout << t << endl;
    else
        cout << s.substr(pos, n) << endl;
    return 0;
}
#include <iostream>
#include <set>
using namespace std;

set<string> se;
int main(){
    int n, m;
    string s;
    cin >> n;
    cin.get();
    while(n--)
    {
        getline(cin, s);
        se.insert(s);
    }
    cin >> m;
    cin.get();
    while(m--)
    {
        getline(cin, s);
        se.insert(s);
    }
    for(set<string>::iterator it = se.begin(); it != se.end(); it++)
        cout << *it << endl;
    return 0;
}

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!