POJ3630WA
来源:互联网 发布:成都知美术馆开放时间 编辑:程序博客网 时间:2024/06/08 01:32
#include"iostream"// TLE 动态建树超时#include"algorithm"#include"vector"#include"map"#include"string"#include"cstring"#include"deque"#include"queue"#include"stack"#include"cstdio"#include"ctype.h"#include"cmath"#include"set"#include"sstream"using namespace std;const int maxn=10000+12;struct node{node *next[10];bool end;node(){memset(next,0,sizeof(next));end=false;}};void insert(node*root,char *s){int i=0;int k=0;node *p=root;for(i=0;s[i];i++){k=s[i]-'0';if(!p->next[k])p->next[k]=new node();p=p->next[k];}p->end=true;}bool search(node *root,char *s){int i=0;int k=0;node *p=root;for(i=0;s[i];i++){k=s[i]-'0';p=p->next[k];if(!p)return false;}return p->end;}int main(){//freopen("a.txt","r",stdin);int t;cin>>t;while(t--){int n;scanf("%d",&n);node *root=new node();char str[maxn][15];char str1[15];int i;int flag=1;for(i=0;i<n;i++){scanf("%s",str[i]);insert(root,str[i]);}for(i=0;i<n&&flag;i++){int len=strlen(str[i]);for(int j=1;j<len;j++){strncpy(str1,str[i],j);str1[j]='\0';if(search(root,str1))//如果前缀在树中已经出现过说明这个号码是有问题的{flag=0;}}}if(flag)cout<<"YES\n";else cout<<"NO\n";}return 0;}
0 0
- POJ3630WA
- 阶段总结
- 环信libHyphenateSDK.a和支付宝libcrypto.a冲突问题解决办法
- Android消息机制(读书笔记)
- c3p0检测并发访问连接
- VS2008 和 MatlabR2015a 混合编程
- POJ3630WA
- [The Hacker Playbook] 8.SPECIAL TEAMS-CRACKING,EXPLOITS,TRICKS
- 学习SpringMVC(九)之ModelAttribute源码分析
- hdu5688 Problem D
- android线程相关
- startActivityForResult和setResult详解
- iOS - dispatch group用法(dispatch_group_leave、dispatch_group_enter)
- Java 泛型
- Android通用流行框架大全