题意很简单。第一遍做是用的爆搜,然后超时了。
其实这个题的思路是很有意思的,在读取单词表的时候用一个map将每个单词的所有的前缀都存起来,查询的时候直接访问键值就可以了。
str.substr(pos,i)的意思就是从pos位置开始的长度为i的子串。
AC代码:
#include <bits\stdc++.h>
#include <map>
using namespace std;
int main(void){
map<string,int > m;
string str;
m.clear();
while(getline(