【链接】 我是链接,点我呀:)

【题意】

【题解】

每个单词的前缀都不同。
不能更明示了...
裸的字典树。
模拟一下。输出一下就ojbk了。

【代码】

#include <bits/stdc++.h>
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define all(x) x.begin(),x.end()
#define pb push_back
#define lson l,mid,rt<<1
#define ri(x) scanf("%d",&x)
#define rl(x) scanf("%lld",&x)
#define rs(x) scanf("%s",x)
#define rson mid+1,r,rt<<1|1
using namespace std; const double pi = acos(-1);
const int dx[4] = {0,0,1,-1};
const int dy[4] = {1,-1,0,0}; const int NN = 10000;
const int SI = 10;
const int N = 2e5; int ch[NN+10][2],flag[NN+10];
int tot,m,n;
char si[SI+10];
char s[N+10];
int result[N*4+10],cur; void ins(int ci){
int len = strlen(si);
int now = 1;
for (int i = 0;i < len;i++){
if (ch[now][si[i]-'0']==0){
ch[now][si[i]-'0'] = ++tot;
}
now = ch[now][si[i]-'0'];
}
flag[now] = ci;
} void cl(char key){
cur++;
int num = 0;
if (key>='a' && key<='z'){
key = key-'a'+'A';
}
if (key>='A' && key<='Z'){
num+=key-'A'+10;
}else num = key-'0';
for (int i = cur+3;i>=cur;i--){
result[i] = num&1;
num/=2;
}
cur = cur+3;
} int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
ios::sync_with_stdio(0),cin.tie(0);
int T;
cin >> T;
while (T--){
memset(ch,0,sizeof ch);
memset(flag,255,sizeof flag);
tot = 1;
cin >> m >> n;
for (int i = 1;i <= n;i++){
int ci;
cin >> ci >> si;
ins(ci);
}
cin >> s;
int len = strlen(s);
cur = 0;
for (int i = 0;i < len;i++) cl(s[i]);
int now = 1;
for (int i = 1;i <= cur;){
if (i+8>cur) break;
int cnt = 0;
for (int j = i;j <= i+7;j++)
if (result[j]==1) cnt++;
int odd = result[i+8];
odd=1-odd;
if ((cnt&1)==(odd&1)){
for (int j = 1;j <= 8;j++){
result[now+j-1]=result[i+j-1];
}
now = now + 8;
}
i = i+9;
}
int index = 1;
for (int i = 1;i <= m;i++){
int now = 1;
for (int j = index;;j++){
now = ch[now][result[j]];
if (flag[now]!=-1) {
index = j+1;
char key = flag[now];
cout<<key;
break;
}
}
}
cout<<endl;
}
return 0;
}

最新文章

  1. 今天有群友不是很清楚htm直接存数据库的危害,我简单举个例子
  2. C# asp.net mvc 配置多个route 参数
  3. ASP.NET中动态获取数据使用Highcharts图表控件【Copy By Internet】
  4. 洛谷 P1886 滑动窗口
  5. 函数get_table_share
  6. xml代码
  7. poj - 1170 - Shopping Offers(减少国家dp)
  8. tp框架 使用ajax
  9. 《github一天一道算法题》:并归排序
  10. PMP知识点(六)&mdash;&mdash;项目经理权利类型
  11. Django 分页组件替换自定义分页
  12. SQL Server死锁的解决过程
  13. Python爬虫——用BeautifulSoup、python-docx爬取廖雪峰大大的教程为word文档
  14. C - Friends and Subsequences
  15. WPF中TreeView的+-号和连线style的一种实现
  16. IIS服务器SSL证书安装
  17. 开启远程Windows系统3389端口
  18. 安全需求-建模归类——By Me
  19. github与本地电脑关联配置
  20. Android图片二进制与Bitmap、Drawable之间的转换

热门文章

  1. Oracle动态显示日志
  2. linux udev 机制【转】
  3. ES shrink ——一般是结合rollover一起使用的,一开始没有看懂官方shrink文档,当看了这个之后就明白了
  4. AIX&amp;nbsp;常用命令汇总(一)
  5. php的mcrypt
  6. codeforces 712A. Memory and Crow
  7. LeetCode.888-公平的糖果交换(Fair Candy Swap)
  8. HTTP请求与请求头
  9. c++对象关系映射(ORM)框架
  10. Python基础教程思维导图笔记