1 solutions

  • 0
    @ 2025-5-17 12:58:03
    #include<bits/stdc++.h>
    using namespace std;
    string a[150],cmp;
    bool check[150];
    queue<int> up,down;
    int n;
    int main(){
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>a[i]>>cmp;
            if(cmp=="UP"){
                up.push(i);
            }
            if(cmp=="DOWN"){
                down.push(i);
            }
            if(cmp=="SAME"){
                check[i]=1;
            }
        }
        for(int i=1;i<=n;i++){
            if(check[i]==1){
                cout<<a[i]<<"\n";
            }
            else{
                if(!down.empty()){
                    cout<<a[down.front()]<<"\n";
                    down.pop();
                }
                else if(!up.empty()){
                    cout<<a[up.front()]<<"\n";
                    up.pop();
                }
            }
        }
        return 0;
    }
    
    
    • 1

    Information

    ID
    5217
    Time
    1000ms
    Memory
    125MiB
    Difficulty
    5
    Tags
    # Submissions
    3
    Accepted
    2
    Uploaded By