字典树裸题。每次插入询问串,查询的时候拿出来直接查,信息保留在节点上。

#include <bits/stdc++.h>
using namespace std; char s[51];
int n, m, max_size = 0;
int ch[500010][27], sum[500010]; void add_str () {
int l = strlen (s), now = 0;
for (int i = 0; i < l; ++i) {
if (!ch[now][s[i] - 'a']) {
ch[now][s[i] - 'a'] = ++max_size;
}
now = ch[now][s[i] - 'a'];
}
sum[now] = 1;
} void get_ans () {
int l = strlen (s), now = 0;
for (int i = 0; i < l; ++i) {
if (!ch[now][s[i] - 'a']) {
puts ("WRONG");
return;
}
now = ch[now][s[i] - 'a'];
}
if (sum[now] == 1) {
puts ("OK");
sum[now]++;
} else if (sum[now] == 2) {
puts ("REPEAT");
} else if (sum[now] == 0) {
puts ("WRONG");
}
} int main () {
cin >> n;
for (int i = 1; i <= n; ++i) {
scanf ("%s", s);
add_str ();
}
cin >> m;
for (int i = 1; i <= m; ++i) {
scanf ("%s", s);
get_ans ();
}
}

Luogu P2580 于是他错误的点名开始了 Trie树 字典树的更多相关文章

  1. luogu P2580 于是他错误的点名开始了

    luogu  P2580 于是他错误的点名开始了 https://www.luogu.org/problem/show?pid=2580 题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边 ...

  2. P2580 于是他错误的点名开始了(trie)

    P2580 于是他错误的点名开始了 题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉 ...

  3. 【luogu P2580 于是他错误的点名开始了】 题解

    题目链接:https://www.luogu.org/problemnew/show/P2580 我真的永远都爱stl #include <map> #include <cstdio ...

  4. LUOGU P2580 于是他错误的点名开始了(trie树)

    传送门 解题思路 trie树模板

  5. [Luogu 2580] 于是他错误的点名开始了

    [Luogu 2580] 于是他错误的点名开始了 不用好奇我为什么突然发水题题解- 突然觉得自己当年的幼儿园码风太幼稚,就试图把数据结构什么的用指针重写一遍- 想当年因为空间开太大而全 RE,调了一下 ...

  6. [洛谷P2580]于是他错误的点名开始了

    洛谷P2580的一个水题,用啥都能过,不过为了练习一下刚刚学会的字典树,还是认真做一下吧. #include <cstdio> #include <cstring> using ...

  7. [洛谷P2580]于是他错误的点名开始了(Trie树)

    传送门 洛谷P2580的一个水题,用啥都能过,不过为了练习一下刚刚学会的字典树,还是认真做一下吧. #include <cstdio> #include <cstring> u ...

  8. 于是他错误的点名开始了 [Trie]

    于是他错误的点名开始了 题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉(详情请见已 ...

  9. 洛谷—— P2580 于是他错误的点名开始了

    https://www.luogu.org/problem/show?pid=2580 题目背景 XS中学化学竞赛组教练是一个酷爱炉石的人. 他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次 ...

随机推荐

  1. sql中的begin catch 。。。end catch 的用法

    begin catch ...end  catch 是用来处理异常的 begintry--SQLendtry begincatch--sql (处理出错动作)endcatch 我们将可能会出错的sql ...

  2. How to proof Pi

    可以把圆想象成一个无限增大角的正多边形,通过倍角公式即勾股定理进行迭代. sin2x=2sinxcosx

  3. linu系统文件授权命令

  4. 洛谷P2740 草地排水

    最大流 一道完全符合最大流定义的板子题..重新学了一次网络流,希望有更深的理解把.. #include <bits/stdc++.h> #define INF 0x3f3f3f3f #de ...

  5. codevs 2606 约数和问题 (数学+分块)

    题目描述 Description Smart最近沉迷于对约数的研究中. 对于一个数X,函数f(X)表示X所有约数的和.例如:f(6)=1+2+3+6=12.对于一个X,Smart可以很快的算出f(X) ...

  6. gulp 技巧

    install npm install --save-dev jshint gulp-jshint 压缩js npm install --save-dev gulp-minify-css xxCSS ...

  7. [HNOI2008]玩具装箱TOY(斜率优化)

    题目链接 题意:有编号为\(1\cdots N\)的N件玩具,第 i 件玩具经过压缩后变成一维长度为 \(C_i\)​ .要求在一个容器中的玩具编号是连续的,同时如果将第 i 件玩具到第 j 个玩具放 ...

  8. LGP2801 教主的魔法

    题目链接 : P2801 教主的魔法 这是第一次A分块的题 就是模板题了 每个块内排序 每个整块仅需维护整块的修改量 询问操作: 对于边缘块 直接暴力找在[l, r]内 且比给定值大的有几个 对于整块 ...

  9. #565. 「LibreOJ Round #10」mathematican 的二进制(期望 + 分治NTT)

    题面 戳这里,题意简单易懂. 题解 首先我们发现,操作是可以不考虑顺序的,因为每次操作会加一个 \(1\) ,每次进位会减少一个 \(1\) ,我们就可以考虑最后 \(1\) 的个数(也就是最后的和) ...

  10. linux系统下saltstack的安装和配置

    Saltstack是一个新的基础设施管理工具,两大功能:远程执行和配置管理. Saltstack使用Python开发,是一个非常简单易用和轻量级的管理工具.由Master和Minion构成,通过Zer ...