Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <vector>#include <cstdio>#include <queue>#include <string>#include <cstring>using namespace std;vector<string> wset;queue<int> posq[27];const int maxn=100003;string ss;int succt[maxn][27];bool match(string &cs){int pos = 0;for (int i = 0 ; i < cs.length(); i++){int ch = cs[i] - 'a';if(succt[pos][ch] != -1){pos = succt[pos][cs[i]-'a'];} else{return false;}}return true;}int main(){int n;cin>>n;string s;for (int i = 0; i < n; i++){