ACM-ICPC 2018 沈阳赛区网络预赛-I模拟题啊!!!
垃圾题,题目巨TM长。。。这题题意就是说给你一个16进制串,让你把每一位转成长度为4的2进制数,并把这些数连接起来,连接完成后,进行奇偶校验,把字符串切割成每个长度为9的字符串,然后计算前8位的
1的个数,,最后一位是校验位,如果1的个数为奇数 那么校验位应该是1,如果1的个数为偶数,那么校验位应该是0,如果满足,就保留验证的8位去掉校验位,否则去掉整个;然后给了M个字符串对应的ASCll,把验证位置留下来的东西,进行和字符串匹配,然后输出N个对应ASCll的字符???
这题意很绕啊。。。不过纯模拟很烦啊,用unorder_map的快速查找和string的可加性,以及string.substr的强大功能这题迎刃而解啦!!!
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<unordered_map>
#include<map>
#include<vector>
#pragma GCC optimize(2)
using namespace std;
unordered_map<string,int> mp;
unordered_map<char,string> table;
void init(){
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['']="";
table['a']="";
table['A']="";
table['B']="";
table['b']="";
table['C']="";
table['c']="";
table['D']="";
table['d']="";
table['E']="";
table['e']="";
table['F']="";
table['f']="";
}
int main(){
int t;
int n,m;
string s;
string str2;
string ans;
scanf("%d",&t);
init();
vector<int>vec;
while(t--){
vec.clear();
mp.clear();
scanf("%d%d",&n,&m);
int tmp;
string tmps;
for (int i=;i<=m;i++){
cin>>tmp>>tmps;
mp[tmps]=tmp;
}
cin>>s;
int len=s.length();
str2.clear();
ans.clear();
tmps.clear();
for (int i=;i<len;i++){
str2+=table[s[i]];
// cout<<table[s[i]]<<" ";
}
//cout<<str2<<endl;
len=str2.length(); for(int i=;i<len;i+=){
tmps=str2.substr(i,);
//cout<<tmps<<" ";
int cnt=;
if (tmps.length()!=)break;
for (int j=;j<;j++){
if (tmps[j]=='')cnt++;
}
//cout<<cnt<<endl;
if(cnt%== && tmps[]==''){
ans+=tmps.substr(,);
}else if (cnt%== && tmps[]==''){
ans+=tmps.substr(,);
}
tmps.clear();
}
len=ans.length();
tmps.clear();
for (int i=;i<len;i++){
tmps+=ans[i];
if (mp[tmps]!=){
vec.push_back(mp[tmps]);
tmps.clear();
}
}
int sz=vec.size();
for (int i=;i<sz;i++){
if (i==n)break;
printf("%c",vec[i]);
}
printf("\n");
}
return ;
}
ACM-ICPC 2018 沈阳赛区网络预赛-I模拟题啊!!!的更多相关文章
- 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,最后使流量平衡 解析: ...
 - ACM-ICPC 2018 沈阳赛区网络预赛 F Fantastic Graph(贪心或有源汇上下界网络流)
		
https://nanti.jisuanke.com/t/31447 题意 一个二分图,左边N个点,右边M个点,中间K条边,问你是否可以删掉边使得所有点的度数在[L,R]之间 分析 最大流不太会.. ...
 
随机推荐
- Windows 系统下  mysql workbench 的安装及环境配置
			
1.MySQL的官网地址:https://www.mysql.com/ 2,选择DOWNLOADS 3.选择community 再MySQL workbench 4.安装MySQL workbench ...
 - Visio画图--我的形状
			
本人用的Visio 2013 打开Visio后新建一个拓扑图,发现左侧形状一栏不见了 形状栏可以保存很多自定义图形,怎么才能将形状一栏重新显示出来呢?方法其实很简单,方法如下所示: 这时候我们就会发现 ...
 - LeetCode算法题-Convert Sorted Array to Binary Search Tree(Java实现)
			
这是悦乐书的第166次更新,第168篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第25题(顺位题号是108).给定一个数组,其中元素按升序排序,将其转换为高度平衡的二叉 ...
 - Servlet(五):一个Servlet处理多个请求
			
一.为什么要使用一个Servlet来处理多个请求? 当浏览器发送了一次请求到服务器时,servlet容器会根据请求的url-pattern找到对应的Servlet类,执行对应的doPost或doGet ...
 - Java抽象类(Abstract Class)与接口(Interface)区别
			
抽象类与接口比较 抽象类跟接口类似,都不能实例化,可能包含不需实现方法或已实现的方法. 抽象类可以定义一些不是静态或常量的字段,定义 public, protected, private访问级别的具体 ...
 - localhost和127.0.0.1及ip区别
			
1.127.0.0.1是回送地址,指本地机,一般用来测试使用.回送地址是本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址,主要用于网络软件测试以及本地机进程间通信,无论什 ...
 - (1)Python基础
			
几种常用类型 int float str bool 基本数值操作 绝对值 abs 四舍五入 round 最大值&最小值
 - 数据库的未来:ORM+LINQ+RX
			
数据库的未来:ORM+LINQ+RX 数据 操作 异步 ORM LINQ RX
 - Rancher2-----了解什么是rancher以及简单部署
			
个人理解:就是相当于openstack的图形化界面,或者说应用程序的图形化界面,rancher功能就是在图形化界面去管理容器,包括运行容器,创建网络,存储等:rancher有个应用商店,可以根据自己的 ...
 - CAS跳转流程
			
场景一: 用户先访问广告合同管理系统ADM,去投放广告,之后又去资产系统AMS,查看资产信息. 访问ADM时,用户需要先去CAS登录,之后访问AMS时 1.访问广告合同管理系统ADM: 2.访问AMS ...