| ||||||||||
Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
有没有人帮帮我,wa的好奇怪,自己的测试数据都成功,就是不知道错在哪里了?#include<stdio.h> #include<string> using namespace std; char sta[80]; char str[1001][80]; bool v[1001]; int n; int maxlen; void solve(int base) { if(strlen(str[base])>strlen(str[maxlen])) maxlen=base; int i,j; for(i=0; i<=n; i++) { if(v[i]==false && strlen(str[i])-strlen(str[base])==1) { for(j=0; str[i][j]==str[base][j] ; j++); for(; j<strlen(str[i]) && str[i][j+1]==str[base][j]; j++); if(j==strlen(str[i])) { v[i]=true; solve(i); } } } } int main() { int i; while(scanf("%d", &n )!=EOF && n>0) { memset(v,false,1001*sizeof(bool)); memset(str,0,1001*80*sizeof(char)); v[0]=true; for(i=0; i<=n; i++) { scanf("%s", &str[i]); } maxlen=0; solve(0); printf("%s\n", str[maxlen]); } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator