[07]字符覆盖-百度2018秋

1.题目描述

小度有一个小写字母组成的字符串s.字符串s已经被写在墙上了.
小度还有很多卡片,每个卡片上有一个小写字母,组成一个字符串t。小度可以选择字符串t中任意一个字符,然后覆盖在字符串s的一个字符之上。小度想知道在选取一些卡片覆盖s的一些字符之后,可以得到的字典序最大的字符串是什么。

  • 输入描述:
    输入包括两行,第一行一个字符串s,字符串s长度 length(1 ≤length ≤50),s中每个字符都是小写字母第二行一个字符串t,字符串t长度length(1 ≤ length ≤ 50),t中每个字符都是小写字母
  • 输出描述:
    输出一个字符串,即可以得到的字典序最大字符串
  • 输入示例:
    fedcba 
    ee 
    
  • 输出示例:
    feeeba
    

2.题目解析

t按从大到小依次替换s中小的字符。

3.参考答案

#include <bits/stdc++.h>
using namespace std;

bool cmp(char a,char b){
  return a>b;  //正确的顺序
}
int main(){
    string s ;
    cin >> s;
    string t ;
    cin >> t;
    sort(t.begin(),t.end(),cmp);
    int j =0;
    for(int i =0;i<s.size();i++){
       while(j<t.size()){
            if(s[i] <t[j]){
                s[i]=t[j];
                j++;
            }else{
                break;
            }
        }
    }
   cout << s;
   return 0;
}

牛客题目

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容