#include<string>
#include<vector>
#include<stdio.h>
inline std::string Read(){
std::string s="";
char ch=getchar();
while(ch!='\n')s.push_back(ch),ch=getchar();
return s;
}
int main(){
int n;
scanf("%d",&n);
getchar();
std::vector<std::string> Song(n),Change(n),Ans(n);
for(int i=0;i<n;i++){
Song[i]=Read();
Change[i]=Read();
}
int Up=n-1,Same=0,Down=0;
for(int i=0;i<n;i++)if(Change[i]=="DOWN")Ans[Down++]=Song[i];
for(int i=0;i<n;i++){
if(Change[i]=="SAME"){
Ans[Down+Same]=Song[i];
Same++;
}
}
for(int i=n-1;i>=0;i--)if(Change[i]=="UP")Ans[Up--]=Song[i];
for(auto i:Ans)printf("%s\n",i.c_str());
return 0;
}
看题解看不懂 改了几次都全错 没信心了 ()