P1071 潜伏者

未赋值的map输出的是0(整型)或空(字符)

#include<stdio.h>
#include<algorithm>
#include<map>
#include<string>
#include<string.h>
using namespace std;
map<char,char> reg;
int alphabat_n[27];
char alphabat_a[28]={"0ABCDEFGHIJKLMNOPQRSTUVWXYZ"};
map<char,int> alp;
//先把每个字母用map映射到它们的顺序数,如alp[A]=1;
//再用alphabat_n数组计数——在原文串中是否有出现过这个字母
int main()
{for(int i=1;i<=26;i++) alp[alphabat_a[i]]=i;char begin[105],after[105],message[105],answer[105];scanf("%s",begin);scanf("%s",after);scanf("%s",message);int l1=strlen(begin);int l2=strlen(message);int error=0;for(int i=0;i<strlen(after);i++) alphabat_n[alp[after[i]]]++;for(int i=1;i<=26;i++){if(alphabat_n[i]==0){printf("Failed");return 0;}}//先判断原文串有没有出现26个字母,没有就直接结束for(int i=0;i<l1;i++){if(reg[begin[i]]&&reg[begin[i]]!=after[i]){error=1;break;}//如果已找到对应原文字母且与当前的原文字母不相同//则一个密文字母对应了两个原文字母,冲突,直接结束reg[begin[i]]=after[i];}for(int i=0;i<l2;i++){if(reg[message[i]]){answer[i]=reg[message[i]];}else error=1;}if(error) printf("Failed");else{for(int i=0;i<strlen(answer);i++)if(isalpha(answer[i])) printf("%c",answer[i]);}return 0;
}

【字符串】map练习相关推荐

  1. NYOJ 685 查找字符串(map)

    查找字符串 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 小明得到了一张写有奇怪字符串的纸,他想知道一些字符串出现了多少次,但这些字符串太多了,他想找你帮忙,你能帮他吗 ...

  2. python 匹配字符串map lambda函数_Python map amp; reduce 以及lambda匿名函数 - jvisualvm - ITeye博客...

    map() map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. 使用map实现一个f(x) = x * ...

  3. c语言 字符串map,C语言实现BitMap

    BitMap的原理不用多说了. 主要说下位操作. 我们假设每个基础存储单元为char,则BYTESIZE = 8,如果为int则16 or 32. 当设置i时,首先ptr+=i/BYTESIZE,到达 ...

  4. Go语言编程—Go语言中JSON的处理(map、struct 和 JSON字符串的相互转换)

    JSON的简单介绍 JSON (JavaScript Object Notation)是一种比XML更轻量级的数据交换格式,在易于人们阅读和编写的同时,也易于程序解析和生成.尽管JSON是JavaSc ...

  5. html页面字符串转map,js将字符串转成map

    在jsp页面中写js怎么把map转换成json? 我在一个jsp页面写的js,通过var map="${chat1DataList}";获取的数据是[jsp中可以使用alibaba ...

  6. ES6 -Set 和 Map 数据结构

    一.set 1.set数据结构:类似数组,但是里面不能有重复值 2.set语法, new Set([]) let set=new Set([1,2,1]); console.log(set);// { ...

  7. Map Set list 理解

    对JAVA的集合的理解是想对于数组   数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型) JAVA集合可以存储和操作数目不固定的一组数据.   所有的JAVA集合都位于 j ...

  8. 20_集合_第20天(Map、可变参数、Collections)

    今日内容介绍 1.Map接口 2.模拟斗地主洗牌发牌 01Map集合概述 A:Map集合概述: 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式 ...

  9. jsonobject转map对象_解析JSON中JSONObject的高级使用

    简介: 在程序开发过程中,在参数传递,函数返回值等方面,越来越多的使用JSON.JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,同时也易于机器解析和生成.易 ...

  10. javascript之Map 和 Set

    存储带键的数据(keyed)集合的对象. 存储有序集合的数组. Map是一个带键的数据项的集合,就像一个 Object 一样. 但是它们最大的差别是 Map 允许任何类型的键(key). Map它的方 ...

最新文章

  1. 对Linux中/etc/fstab中的说明
  2. deepin 安装 kvm-manager
  3. 逆序输出螺旋字符矩阵(三种方法)
  4. Scriptis安装(基于Linkis开发的数据分析工具)
  5. 分布式转码初步方案(hadoop+ffmpeg)
  6. dart系列之:实时通讯,在浏览器中使用WebSockets
  7. 判断sem信号量为零_kernel.sem信号量调优
  8. boost any 实现万能容器_全面剖析 C++ Boost 智能指针!| CSDN 博文精选
  9. 控制QLineEdit的输入范围
  10. Oracle 10g 用户数及价格
  11. 东芝复印机2303出现f070_东芝复印机维修代码大全
  12. sql server 2008 r2安装图解教程
  13. R语言作图之ggplot2初识(1)
  14. [NOIP2008]笨小猴 T1
  15. USB复合设备调试 STM32
  16. LeetCode 力扣C++题解 575. 分糖果
  17. 移植u-boot-2016.11到TQ2440开发板全过程记录
  18. gradle mapstruct 提升警告: Unmapped target property: “
  19. 《宇宙沙盘2》下的星体
  20. 卸载人人影视linux,人人影视Web版CentOS一键安装脚本

热门文章

  1. 苹果a7处理器_研发了A7到A12全部处理器的芯片大牛:被苹果告倒
  2. macOS Homebrew 安装 OpenCV 及切换版本【转】
  3. socket网络程序设计实验一,通过域名查询IP/gethostbyname(基于python3.7、PyQt5)
  4. 捷配SMT重磅上线!五大王炸优惠来袭!
  5. JavaScript中如何将十进制转换为十六进制?
  6. Springboot开发微信小游戏后台-玩家登录流程
  7. 企业再造(Re-engineering)(转载)
  8. DMVPN---理论篇-1
  9. 1.浏览器与web服务器的通信原理概述
  10. C语言fputc() 和 fputs() 之间的区别