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

题意

给出一个映射(左为ascll值),然后给出一个16进制的数,要求先将16进制转化为2进制然后每9位判断,若前8位有奇数个1且第9位为0则这个子串取,若前8位有偶数个1且第9 位为1也取。取出的串在映射中进行查找,输出对应ascll值的字符

分析

用map直接模拟,细节需要注意。

#include <bits/stdc++.h>
using namespace std;
#define ms(a, b) memset(a, b, sizeof (a))
typedef long long ll;
const int maxn = 1e5+;
//const int inf = 1e9+7;
map<string, char> dic;
map<string, char> ::iterator it;
char s[];
char data[];
char data01[];
char r_data[];
int HtoD(char x){
if(x>=''&&x<=''){
return x - '';
}else if(x>='A'&&x<='F'){
return x-'A'+;
}else{
return x-'a'+;
}
}
bool check(int x){
int cnt = ;
for(int i = x;i<x+;i++){
if(data01[i]=='') cnt++;
}
if(cnt&){
return data01[x+]=='';
}else{
return data01[x+]=='';
}
}
int main(){
#ifdef LOCAL
freopen("in","r",stdin);
// freopen("out.txt","w",stdout);
#endif // LOCAL
int t;
scanf("%d", &t);
for(int _=;_<t;_++){
int m, n, c;
scanf("%d%d", &m, &n);
dic.clear();
for(int i = ;i<n;i++){
scanf("%d%s", &c, s);
dic[s]=(char)c;
}
scanf("%s", data);
int data_len = strlen(data);
for(int i = ;i<data_len;i++){
int x = HtoD(data[i]);
for(int j = ;j>=;j--){
if(x&(<<j))
data01[*i+-j] = '';
else
data01[*i+-j] = '';
}
}
// for(int i = 0;i<data_len*4;i+=4){
// printf("%c", data01[i]);
// printf("%c", data01[i+1]);
// printf("%c", data01[i+2]);
// printf("%c", data01[i+3]);
// printf(" ");
// }
int r_len = ;
for(int i = ;i<data_len*;i+=){
if(i+<=data_len* && check(i)){
for(int j = i;j<i+;j++){
r_data[r_len++] = data01[j];
// printf("%c", data01[j]);
}
// printf("\n");
}
}
string query = "";
for(int i = ;i<r_len;i++){
query += r_data[i];
it = dic.find(query);
if(it!=dic.end()){
printf("%c", (*it).second);
query = "";
m--;
if(m==) break;
} }
puts("");
}
return ;
}

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 题解:题目很长的模拟,有点uva的感觉 分成四步 part1 16进制转为二进制string 用bitset的to_stri ...

  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. flex布局justify-content属性和align-items属性设置

    前言: flex最常用的就是justify-content和align-items了,这里把这两个属性介绍下,大家更多关于flex布局可以查看阮一峰的日志,写的非常清楚! 阮一峰flex布局的日志:h ...

  2. ZABBIX监控mysql主从状态

    模板如下 <zabbix_export> <version>3.4</version> <date>2018-11-30T08:28:28Z</d ...

  3. python之pickle

    #!/usr/bin/python # -*- coding: UTF- -*- ''' ''' import pickle # pickle 只能Python识别 不适用于别的语言 li = [, ...

  4. Golang 入门系列(八) cron定时任务

    1.cron 表达式的基本格式  Go 实现的cron 表达式的基本语法跟linux 中的 crontab基本是类似的.cron(计划任务),就是按照约定的时间,定时的执行特定的任务(job).cro ...

  5. Java 208 道面试题:第一模块答案

    目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态:第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多 ...

  6. Abp vNext 切换MySql数据库

    Abp vNext是Abp的下一代版本,目前还在经一步完善,代码已经全部重写了,好的东西保留了下来,去除了很多笨重的东西,从官宣来看,Abp vNext主要是为了以后微服务架构而诞生的. 从源码来看, ...

  7. WPF中利用控件的DataContext属性为多个TextBox绑定数据

    工作上需要从给定的接口获取数据,然后显示在界面的编辑框中,以往肯定会一个一个的去赋值,但这样太麻烦而且效率很低,不利于维护,于是想到了数据绑定这一方法,数据绑定主要利用INotifyPropertyC ...

  8. excel冻结标题栏,让标题栏不滚动的方法

    https://jingyan.baidu.com/article/148a1921f54afe4d71c3b18e.html

  9. [模板] 杜教筛 && bzoj3944-Sum

    杜教筛 浅谈一类积性函数的前缀和 - skywalkert's space - CSDN博客 杜教筛可以在\(O(n^{\frac 23})\)的时间复杂度内利用卷积求出一些积性函数的前缀和. 算法 ...

  10. python之旅十【第十篇】paramiko模块

    paramiko模块介绍 ssh的远程连接 基于用户名密码的连接 import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_h ...