ACM-ICPC 2018 沈阳赛区网络预赛 I. Lattice's basics in digital electronics 阅读题加模拟题
题意: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 阅读题加模拟题的更多相关文章
- ACM-ICPC 2018 沈阳赛区网络预赛 I Lattice's basics in digital electronics(模拟)
https://nanti.jisuanke.com/t/31450 题意 给出一个映射(左为ascll值),然后给出一个16进制的数,要求先将16进制转化为2进制然后每9位判断,若前8位有奇数个1且 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 K Supreme Number(规律)
https://nanti.jisuanke.com/t/31452 题意 给出一个n (2 ≤ N ≤ 10100 ),找到最接近且小于n的一个数,这个数需要满足每位上的数字构成的集合的每个非空子集 ...
- 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 ...
- 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. ...
- 图上两点之间的第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 ...
- 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 ...
- 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 ...
- ACM-ICPC 2018 沈阳赛区网络预赛 F. Fantastic Graph
"Oh, There is a bipartite graph.""Make it Fantastic." X wants to check whether a ...
- Fantastic Graph 2018 沈阳赛区网络预赛 F题
题意: 二分图 有k条边,我们去选择其中的几条 每选中一条那么此条边的u 和 v的度数就+1,最后使得所有点的度数都在[l, r]这个区间内 , 这就相当于 边流入1,流出1,最后使流量平衡 解析: ...
随机推荐
- 【Windows】Windows中解析DOS的for命令使用
目录结构: contents structure [+] 简介 for /d ... in ... 案例 案例:打印C://根目录下所有的文件夹名称 案例:打印当前路径下,只有1-3个字母的文件夹名 ...
- Java socket保存示例(不使用base64)解决中文乱码问题
MultiThreadServer.java package com.my.nubase64; import java.io.BufferedReader; import java.io.Buffer ...
- Atitit 医学之道 attilax总结
Atitit 医学之道 attilax总结 1. 相关的学科3 1.1. 口腔医学 ok3 1.2. 人体解剖学 ok3 1.3. 生理学 ok3 1.4. 病理学 ok3 1.5. 骨伤科学 ...
- 【Spring源码分析】Bean加载流程概览(转)
转载自:https://www.cnblogs.com/xrq730/p/6285358.html 代码入口 之前写文章都会啰啰嗦嗦一大堆再开始,进入[Spring源码分析]这个板块就直接切入正题了. ...
- 【30集iCore3_ADP出厂源代码(ARM部分)讲解视频】30-5 底层驱动之旋转编码器
源视频包下载地址:链接:http://pan.baidu.com/s/1mhENI9i密码:mf1x 银杏科技优酷视频发布区:http://i.youku.com/gingko8
- C语言 · 2n皇后问题
基础练习 2n皇后问题 时间限制:1.0s 内存限制:512.0MB 锦囊1 搜索算法. 锦囊2 先搜索n皇后的解,在拼凑成2n皇后的解. 问题描述 给定一个n*n的棋盘,棋盘中 ...
- 奋斗STM32V3版ADC例程
https://wenku.baidu.com/view/a60b2042c850ad02de8041b7.html
- Mac/Linux如何查找应用所安装路径
Linux.Mac中查看某 个软件的安装路径(地址)有时显得非常重要.比如某个文件的快速启动项被删除,或者你要建立快速启动项,或者想删除. 添加安装文件等等,很多地方都要用到查案文件安装路径的命令. ...
- Jquery 上传插件 FineUploader 在 webform 和 mvc 中的使用;
多文件上传组件FineUploader使用心得 FineUploader 结合 一般处理程序 [上传示例] 参考:http://www.cnblogs.com/dudu/archive/2012/ ...
- Mac: Alias[设置命令的别名]
设置`.bash_profile` 1.打开终端`Terminal` 2.输入命令`cd ~`到用户主目录 $ cd ~ 3.生成一个新文件 $ touch .bash_profile 4.使用喜欢的 ...