题意:https://nanti.jisuanke.com/t/31450

题解:题目很长的模拟,有点uva的感觉

分成四步

part1 16进制转为二进制string 用bitset的to_string()

part2 parity check 校对,将处理结果pushback到另一个string

part3 建字典树,用形如线段树的数组存

part4 遍历字典树

1A 233

#include<bitset>
#include <cstdio>
#include <cmath>
#include <complex>
#include <algorithm>
#include <iostream>
#include<string.h>
#define rep(i,t,n) for(int i =(t);i<=(n);++i)
#define per(i,n,t) for(int i =(n);i>=(t);--i)
#define mmm(a,b) memset(a,b,sizeof(a))
typedef long long ll;
using namespace std;
const int maxn = 8e5; int tot = ;
const int MAXN = ;
bitset<maxn>bi;
bitset<>buff[+];
char s[ + ];
char tree[ * ];
int n;
string ss;
string cd;
int main()
{ int t; cin >> t; while (t--) {
ss.clear();
cd.clear();
mmm(tree, );
int n,m;
cin >> m >> n;
rep(i, , n) {
int x;
char op[];
cin >> x >> op;
int len = strlen(op);
int now = ;
rep(j, , len - ) {
if (op[j] == '') now = now * + ;
else now = now * ;
}
tree[now] = (char)x;
}
scanf("%s", s);
int len = strlen(s);
int tot = ;
rep(i, , len - ) {
if (isdigit(s[i]))buff[tot++] = s[i] - ;
else if (s[i] >= 'a'&&s[i] <= 'z')buff[tot++] = s[i] - 'a' + ;
else buff[tot++] = s[i] - 'A' + ;
}
//rep(i, 0, tot - 1)cout << buff[i] ;cout << endl; rep(i, , tot - )
ss += buff[i].to_string();
len = ss.length();
int cnt = ;
rep(i, , len-) {
if (i % == ) {
if (cnt % == && ss[i] == ''|| cnt % == && ss[i] == '') {
string temp = ss.substr(i - , );
cd += temp;
}
}
if (i % == )cnt = ;
if (ss[i] == '')cnt++;
}
len = cd.length();
rep(i, , len - ) {
int now = ;
while (now == || !tree[now]) {
if (cd[i] == '') now = now * + ;
else now = now * ;
i++;
}
printf("%c", tree[now]); m--;
if (m == )break;
i--;
}
cout << endl;
}
cin >> t;
return ;
}
/*
2
15 9
32 0100
33 11
100 1011
101 0110
104 1010
108 00
111 100
114 0111
119 0101
A6Fd021171c562Fde1
8 3
49 0001
50 01001
51 011
14DB24722698
*/

ACM-ICPC 2018 沈阳赛区网络预赛 I. Lattice's basics in digital electronics 阅读题加模拟题的更多相关文章

  1. ACM-ICPC 2018 沈阳赛区网络预赛 I Lattice's basics in digital electronics(模拟)

    https://nanti.jisuanke.com/t/31450 题意 给出一个映射(左为ascll值),然后给出一个16进制的数,要求先将16进制转化为2进制然后每9位判断,若前8位有奇数个1且 ...

  2. ACM-ICPC 2018 沈阳赛区网络预赛 K Supreme Number(规律)

    https://nanti.jisuanke.com/t/31452 题意 给出一个n (2 ≤ N ≤ 10100 ),找到最接近且小于n的一个数,这个数需要满足每位上的数字构成的集合的每个非空子集 ...

  3. ACM-ICPC 2018 沈阳赛区网络预赛-K:Supreme Number

    Supreme Number A prime number (or a prime) is a natural number greater than 11 that cannot be formed ...

  4. ACM-ICPC 2018 沈阳赛区网络预赛-D:Made In Heaven(K短路+A*模板)

    Made In Heaven One day in the jail, F·F invites Jolyne Kujo (JOJO in brief) to play tennis with her. ...

  5. 图上两点之间的第k最短路径的长度 ACM-ICPC 2018 沈阳赛区网络预赛 D. Made In Heaven

    131072K   One day in the jail, F·F invites Jolyne Kujo (JOJO in brief) to play tennis with her. Howe ...

  6. ACM-ICPC 2018 沈阳赛区网络预赛 J树分块

    J. Ka Chang Given a rooted tree ( the root is node 11 ) of NN nodes. Initially, each node has zero p ...

  7. ACM-ICPC 2018 沈阳赛区网络预赛 K. Supreme Number

    A prime number (or a prime) is a natural number greater than 11 that cannot be formed by multiplying ...

  8. ACM-ICPC 2018 沈阳赛区网络预赛 F. Fantastic Graph

    "Oh, There is a bipartite graph.""Make it Fantastic." X wants to check whether a ...

  9. Fantastic Graph 2018 沈阳赛区网络预赛 F题

    题意: 二分图 有k条边,我们去选择其中的几条 每选中一条那么此条边的u 和 v的度数就+1,最后使得所有点的度数都在[l, r]这个区间内 , 这就相当于 边流入1,流出1,最后使流量平衡 解析: ...

随机推荐

  1. DropDMG for Mac(dmg 文件打包工具)破解版安装

    1.软件简介    DropDMG 是 macOS 系统上的一款帮助用户快速打包 DMG 文件的 Mac 文件管理软件,DropDMG 不但可以将影像档加密.更可以配合 GZip .BZip2 .Ma ...

  2. CHKDSK/f

    chkdisk c: /f

  3. 【Netty】通俗地讲,Netty 能做什么?

    作者:郭无心链接:https://www.zhihu.com/question/24322387/answer/78947405来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  4. vue的双向绑定

    1.效果 点击+-修改数量,金额跟着一起变动 2.index.html <!DOCTYPE html> <html lang="en"> <head& ...

  5. 你知道element中el-table的列名中不能含有" . "吗?

    [本文出自天外归云的博客园] Vue+element比较流行,但是element有个坑,就是element的表格列名中不能含有点儿" . ",否则数据都显示不出来. 在elemen ...

  6. CAD技巧之002——如何用Cass内插高程点或者说加密高程点

    CAD技巧之002——如何用Cass内插高程点或者说加密高程点 很多同志如果遇到奇葩的Cass内插高程点或者说加密高程点,怎么办,一个个编辑?如果工作量很大,怎么办呢. 今天九天就教您一个好方法! 废 ...

  7. 【WPF】自定义形状的按钮Button

    需求:做一个如下图所示的多边形按钮. <!-- 特殊形状的按钮 --> <Grid> <Polygon Points="0,0 140,0 190,42 140 ...

  8. 教你一招:使用最快速的方式激活windows10专业版

    1.安装win10专业版 2.在桌面新建“文本文档.txt” 3.复制如下代码到新新建的“文本文档.txt”中 slmgr /ipk VK7JG-NPHTM-C97JM-9MPGT-3V66T slm ...

  9. Android Things:撸起袖子来创建第一个Things工程

    http://blog.csdn.net/p106786860/article/details/60161020 ——————————————————————————————————————————— ...

  10. Go语言实践_实现一(服务器端)对多(客户端)在线聊天室

    一.目的 运用Go语言中的goroutine和通道实现一个简单的一个服务器端对多个客户端的在线聊天 软件环境:Goland,Go1.9 代码仓库链接 二.设计思路 与一对一的设计思路类似,就是加了个线 ...