爱丽丝的卡片
中文
时间:0.2s 空间:32M
题目描述:
爱丽丝有一个由小写字母构成的字符串,字符串被写在了墙上。
同时,她还有一堆卡片,每张卡片上写着一个字母,爱丽丝可以取出若干张卡片,覆盖墙上的一些字母。(也可以一张都不取)
她希望覆盖之后新的字符串字典序尽可能大。帮她找出覆盖之后字典序最大的字符串吧。
输入格式:
第一行输入一个字符串,表示墙上的字符串。
第二行输入一个字符串,表示爱丽丝手上拥有的字母。
输出格式:
输出一行,包含一个字符串
样例输入:
fedcba ee
样例输出:
feeeba
约定:
字符串长度<=50,都由小写字母构成
代码
#include <bits/stdc++.h>
using namespace std;
string a,b,c;
int vis[105];
int main(){
cin>>a>>b;
int len=a.size(),lenn=b.size();
for(int i=0;i<len;i++){
c[i]=a[i];
for(int j=0;j<lenn;j++){
if(c[i]<b[j]&&vis[j]==0){
c[i]=b[j];
vis[j]=1;
}
}
}
for(int i=0;i<len;i++){
cout<<c[i];
}
}