社区讨论
求条 不知道哪错了QWQ
P2580于是他错误的点名开始了参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @mhjq9kea
- 此快照首次捕获于
- 2025/11/04 06:44 4 个月前
- 此快照最后确认于
- 2025/11/04 06:44 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
const int N = 5e5+10;
int tree[N][27];
int cnt[N];
char s[N];
int n,m,tot = 1;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin >> n;
for(int i = 1;i <= n;i ++){
scanf("%s",s+1);
int u = 1;
for(int j = 1;s[j];j ++){
int a = s[j] - 'a';
if(!tree[u][a])tree[u][a] = ++tot;
u = tree[u][a];
}
cnt[u] = 1;
}
cin >> m;
for(int i = 1;i <= m;i ++){
scanf("%s",s+1);
int u = 1;
for(int j = 1;s[j];j ++){
int a = s[j] - 'a';
u = tree[u][a];
if(!u)break;
}
if(cnt[u] == 1){
cout << "OK" <<endl;
cnt[u] = 2;
}else if(cnt[u] == 2){
cout << "REPEAT" <<endl;
}else cout << "WRONG" <<endl;
}
return 0;
}
回复
共 3 条回复,欢迎继续交流。
正在加载回复...