您的位置:首页 > 其它

COJ 1115: 最短的名字

2015-07-20 10:23 148 查看
这道题目一开始想的也是最直接的就是暴力
后来觉得会超时
然后直觉告诉我不超时的方法我一定不会
嗯 = =。
后来查了一下发现可以用字典树
然而树这种东西我连考试都过不去
更别说敲代码了。
后来一看这道题目要求的时间是5s
然后暴力的时间是4.8s
好吧还好没有超时
字典树看了半天
真心不会QAQ
好吧 等我会的那一天 一定要写博庆祝一下!
以下AC代码。。。
#include<stdio.h>
#include<string.h>
#define maxn 1001

int main()
{
int t,i,j,m,n,max,k;
char a[maxn][maxn];
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s",a[i]);
}
k=0;
for(j=0;j<n;)
{
max=1;
for(i=0;i<n;i++)
{
for(m=0;m<n;)
{if(i!=j&&a[j][m]==a[i][m])
m++;
else break;}
if((m+1)>max)max=(m+1);
}
k+=max;
j++;
}
printf("%d\n",k);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: