记录编号 37666 评测结果 AAAAAAAAAA
题目名称 字符串子串 最终得分 100
用户昵称 GravatarCzb。 是否通过 通过
代码语言 C++ 运行时间 0.123 s
提交时间 2012-04-05 19:56:00 内存使用 47.95 MiB
显示代码纯文本
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
 
struct orz
{char s[1000];}a[50000];
 
int n,t;
 
char s[10][101],c[1000];
 
bool flag[10];
 
void dfs(int k)
{
    if(k>n){strcpy(a[++t].s,c);return;}
    int l=strlen(c);for(int i=1;i<=n;i++)
    if(!flag[i]){flag[i]=true;strcpy(c+l,s[i]);
    dfs(k+1);memset(c+l,0,sizeof(c+l));flag[i]=false;}
}
 
int cmp(const void *a,const void *b)
{return strcmp((*(orz *)a).s,(*(orz *)b).s);}
 
int main(int argc,char *argv[])
{
    freopen("substring.in","r",stdin);
    freopen("substring.out","w",stdout);
    int i;scanf("%d\n",&n);
    for(i=1;i<=n;i++)scanf("%s\n",s[i]);
    dfs(1);qsort(a+1,t,sizeof(orz),cmp);
    printf("%s\n",a[1].s);
    return 0;
}