吐了
查看原帖
吐了
784650
__My0217__楼主2024/5/27 13:26

奇妙re,不排除rz问题

#include<iostream>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
int t[100005][10], tot, _end[100005], flag;
void ins(int u, string str){
	int rel = 0;
	for(int i = 0 ; i < str.length() ; i++){
		int to = str[i]-'0';
		if(t[u][to]) {
			u = t[u][to];
			if(_end[u] > 0) flag = 1;
		}
		else {
			rel = 1;
			t[u][to] = ++tot;
			u = t[u][to];
		}
	}
	if(rel == 0) flag = 1;
	_end[u]++;
}
int main(){
//	freopen("data.in", "r", stdin);
//	freopen("trie.out", "w", stdout);
	int T;
	cin >> T;
	while(T--){
		for(int i = 0 ; i <= 100000 ; i++){
			for(int j = 0 ; j <= 9 ; j++){
				t[i][j] = 0;
			}
			_end[i] = 0; 
		}
		flag=0; tot=0;
		int n;
		cin >> n;
		for(int i = 1 ; i <= n ; i++){
			string s; cin >> s; ins(0, s);
		}
		if(flag) puts("NO");
		else puts("YES");
	} 
	return 0;
} 
2024/5/27 13:26
加载中...