@[zhengweihao](/user/1351134) ,建议这样写
```cpp
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int main()
{
string s;
int max_i=0,mid_i=0,min_i=0,a[3]={0},n[3]={0};
cin>>a[0]>>a[1]>>a[2]>>s;
for(int i=0;i<3;i++)
{
if(s[i]=='C')max_i=i;
else if(s[i]=='B')mid_i=i;
else if(s[i]=='A')min_i=i;
}
n[max_i]=max(a[0],max(a[1],a[2]));
n[min_i]=min(a[0],min(a[1],a[2]));
for(int i=0;i<3;i++)if(a[i]!=n[max_i]&&a[i]!=n[min_i])n[mid_i]=a[i];
for(int i=0;i<3;i++)cout<<n[i]<<" ";
return 0;
}
```
by goIdie @ 2024-08-14 12:28:49
hack
```
2 1 3
ACB
```
by 奈芙蓮 @ 2024-08-14 12:45:24
可以排序+映射(有点小题大做了)
但码量挺少的 @[zhengweihao](/user/1351134)
```
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,a[3];
map<char,int> mp;
for(int i=0;i<3;i++) cin>>a[i];
sort(a,a+3);
mp['A']=a[0];
mp['B']=a[1];
mp['C']=a[2];
char c;
for(int i=0;i<3;i++)
{
cin>>c;
cout<<mp[c]<<" ";
}
return 0;
}
```
by _____QWQ_____ @ 2024-08-14 13:05:11