题解:AT_abc416_c [ABC416C] Concat (X-th)
AT_abc416_c [ABC416C] Concat (X-th) - 洛谷
题意简述
给定
解题思路
暴搜
注意到 t.erase(t.size()-s[j].size()),毕竟说过字符串长度不超过
排序
求字典序第
AC 代码
#include<algorithm>
#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
const int N=15;
int n,k,x;
string s[N],t;
vector<string>v;
void dfs(int i){
for(int j=1;j<=n;j++){
t+=s[j];
if(i==k)v.emplace_back(t);
else dfs(i+1);
t.erase(t.size()-s[j].size());
}
}
//暴搜
int main(){
scanf("%d%d%d",&n,&k,&x);
for(int i=1;i<=n;i++)cin>>s[i];
dfs(1);
sort(v.begin(),v.end());
//sort 自动用字典序排序字符串
puts(v[x-1].c_str());
//下标从 0 开始,故需要减 1
return 0;
}