记录编号 |
420632 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[NOI 2000]单词查找树 |
最终得分 |
100 |
用户昵称 |
@@2@ |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.037 s |
提交时间 |
2017-07-05 10:27:38 |
内存使用 |
20.91 MiB |
显示代码纯文本
#include <algorithm>
#include <fstream>
#include <stack>
#include <string>
#include <queue>
using namespace std;
ifstream cin("trie.in");
ofstream cout("trie.out");
int ans = 1,n=1;
string s;
class Trie
{
public:
int next[27];
Trie()
{
for (int i = 0; i < 27; ++i)
{
next[i] = -1;
/* code */
}
}
}t[200000];
int f()
{
int root = 0;
int l = s.length();
for (int i = 0; i < l; ++i)
{
if (t[root].next[s[i]-'A'] == -1)
{
ans++;
t[root].next[s[i]-'A'] = n++;
/* code */
}
root = t[root].next[s[i]-'A'];
/* code */
}
return 0;
}
int main()
{
while(cin >> s)
{
f();
}
cout << ans;
cin.close();
cout.close();
return 0;
}