1 条题解
-
3赵青海 (huhe) LV 7 SU @ 2021-8-7 21:01:06
C++ :
#include <iostream> #include <string> #include <cstring> using namespace std; const int maxn=1e5+5; int son[maxn][10],idx; bool vis[maxn]; bool insert(string s) { bool HasSubstr=false,isNew=false; int p=0; for(int i=0;i<s.size();i++){ int x=s[i]-'0'; if(!son[p][x]){ isNew=true; son[p][x]=++idx; } p=son[p][x]; if(vis[p]) HasSubstr=true; } vis[p]=true; return !HasSubstr&&isNew; } int main() { int t; cin>>t; while(t--){ int n; cin>>n; memset(son,0,sizeof son); memset(vis,false,sizeof vis); bool flag=true; idx=0; while(n--){ string s; cin>>s; if(!insert(s)) flag=false; } if(flag) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
- 1
信息
- ID
- 72
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 223
- 已通过
- 64
- 上传者