Lex String 题解
思路:贪心
我们知道,肯定字典序越靠前的字符串,肯定越靠前的字母越小。
考虑每一次插入数组
那么得先给
这里可以先将
记得特判选某一个数组是否达到了
code:
#include<bits/stdc++.h> #define int long long using namespace std; int a[101],b[101],c[101]; signed main() { int T; cin>>T; while(T--) { string aa,bb;int k;bool x;int s=0; int len1,len2; cin>>len1>>len2>>k; cin>>aa>>bb; for(int i=1;i<=len1;i++) a[i]=aa[i-1]; for(int i=1;i<=len2;i++) b[i]=bb[i-1]; sort(a+1,a+len1+1); sort(b+1,b+len2+1); int len3=1,l1=1,l2=1; while(len3<=len1+len2&&l1<=len1&&l2<=len2) { if(s==k) { if(x==0) c[len3++]=b[l2++]; else c[len3++]=a[l1++]; x^=1,s=1; } else { if(a[l1]<b[l2]) { c[len3++]=a[l1++]; if(x==0) s++; else x=0,s=1; } else { c[len3++]=b[l2++]; if(x==1) s++; else x=1,s=1; } } } for(int i=1;i<len3;i++) cout<<char(c[i]); cout<<endl; } return 0; }
本文作者:sLMxf
本文链接:https://www.cnblogs.com/SLMXF/p/18564584
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步