/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 532.0 KiB
#2 Accepted 1ms 532.0 KiB
#3 Accepted 106ms 2.375 MiB
#4 Accepted 21ms 7.258 MiB
#5 Accepted 1ms 532.0 KiB
#6 Accepted 123ms 2.16 MiB
#7 Accepted 115ms 1.918 MiB
#8 Accepted 23ms 788.0 KiB
#9 Accepted 43ms 7.891 MiB
#10 Accepted 65ms 7.688 MiB
#11 Accepted 27ms 2.625 MiB
#12 Accepted 26ms 7.344 MiB

Code

#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define ll long long int
#define vv vector<long long>
#define mpp map<long long,long long>
#define ss set<long long>
#define vp vector<pair<long long, long long>>
#define MOD 1000000007
#define YES cout<<"YES"<<endl
#define NO cout<<"NO"<<endl
#define all_v v.begin(),v.end()
#define all_a a.begin(),a.end()
#define all_n for(int i=0;i<n;i++)
void requisite(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);cout.tie(nullptr);
}
int main() {
    requisite();
    ll t;
    cin>>t;
    while (t--){
        string s;
        cin>>s;
        ll q;
        cin>>q;
        bool rev=false;
        deque<char> beg;
        deque<char> end;
        for (int i = 0; i < q; ++i) {
            char c;
            ll a,b;
            cin>>a;
            if (a==1){
                rev=(!rev);
            }
            else{
                cin>>b>>c;
                if (b==1 and !rev){
                    beg.push_front(c);
                }
                else if (b==1 and rev){
                    end.push_back(c);
                }
                else if (b==2 and !rev){
                    end.push_back(c);
                }
                else{
                    beg.push_front(c);
                }
            }
//            cout<<beg<<" "<<end<<endl;
        }
        if (rev){
            reverse(s.begin(), s.end());
            reverse(beg.begin(),beg.end());
            reverse(end.begin(),end.end());\
            swap(beg,end);
            for(auto it:beg)cout<<it;
            cout<<s;
            for(auto it:end)cout<<it;
            cout<<endl;
        }
        else{
            for(auto it:beg)cout<<it;
            cout<<s;
            for(auto it:end)cout<<it;
            cout<<endl;
        }
    }
    return 0;
}

Information

Submit By
Type
Submission
Problem
P1088 Mr. Heart's String Challenge
Language
C++17 (G++ 13.2.0)
Submit At
2024-09-05 19:44:26
Judged At
2024-09-05 19:44:26
Judged By
Score
100
Total Time
123ms
Peak Memory
7.891 MiB