#include "stdio.h"
#include "string.h"
#include "string"
#include "iostream"
#include "math.h"
#include "map"
#include "queue"
#include "malloc.h"
using namespace std;
map<char,string> mp; int main()
{
mp['']="";mp['']="";mp['']="";mp['']="";mp['']="";
mp['']="";mp['']="";mp['']="";mp['']="";mp['']="";
mp['A']="";mp['B']="";mp['C']="";mp['D']="";mp['E']="";
mp['F']="";
int a;
char test[];
cin >> a;
while(a--)
{ memset(test,,sizeof(test));
string b="";
cin>>test;
for(int i = ;i < strlen(test);i++)
{
b += mp[test[i]];
}
int len = b.length();
if(len%==)
b = "" + b;
else if(len%==)
b = "" + b;
int flag = ;
for(int i = ;i < b.length(); i = i + )
{
int num = *(b[i]-'')+*(b[i+]-'')+(b[i+]-'');
if(num)
flag = ;
if(flag)
cout<<num; }
cout<<endl;
}
return ;
}

但是这个跑在蓝桥杯的题目中会超时,因为map查询是对数时间复杂度放在循环中会超时

更改map后通过

#include "stdio.h"
#include "string.h"
#include "string"
#include "iostream"
#include "math.h"
#include "map"
#include "queue"
using namespace std;
map<char,string> mp; int main()
{
int a;
string test;
cin >> a;
while(a--)
{
string b="";
cin>>test;
for(int i=;i<test.length();i++)//遍历,字符串上加上每一位
{
switch(test[i])
{
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case '':b+="";break;
case 'A':b+="";break;
case 'B':b+="";break;
case 'C':b+="";break;
case 'D':b+="";break;
case 'E':b+="";break;
case 'F':b+="";break;
default:break;
}
}
int len = b.length();
if(len%==)
b = "" + b;
else if(len%==)
b = "" + b;
int flag = ;
for(int i = ;i < b.length(); i = i + )
{
int num = *(b[i]-'')+*(b[i+]-'')+(b[i+]-'');
if(num)
flag = ;
if(flag)
cout<<num;
}
cout<<endl;
} return ;
}

16进制转化8进制---map的更多相关文章

  1. 《N诺机试指南》(五)进制转化

    进制转化类题目类型: 代码详解及注释解答:  //进制转化问题 #include <bits/stdc++.h> using namespace std; int main(){ // 1 ...

  2. SQLSERVER 16进制转10进制

    原码.补码.反码参考: http://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html 进制转换参考: http://ww ...

  3. js模拟栈---进制转化。十进制转任意进制进制,任意进制转十进制

    var Stack = (function(){ var items = new WeakMap(); //先入后出,后入先出 class Stack{ constructor(){ items.se ...

  4. 16进制转10进制 HDU-1720

    A+B Coming Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  5. python数据结构:进制转化探索

    *********************************第一部分*************************************************************** ...

  6. SQLSERVER 16进制与10进制转换

    最近工控项目中遇到的16进制与10进制转换,在.NET中比较容易实现,在SQLSERVER中发现没有直接的转换,尤其是出现超出范围的long负数,即无符号64位整数在sqlserver中的存储.网上找 ...

  7. delphi 中字符串与16进制、10进制转换函数

      //字符串转成16进制代码function strToHexStr(str:string):string;varc:char;ss:string;i:integer;beginwhile str& ...

  8. 【风马一族_C】进制转化

    #include "stdio.h" #include "Math.h" #define number 50 //设置数组的长度 int num10; //十进 ...

  9. java中16进制转换10进制

    java中16进制转换10进制 public static void main(String[] args) { String str = "04e1"; String myStr ...

随机推荐

  1. 基于alpine制作php镜像

    alpine包搜索https://pkgs.alpinelinux.org/ 安装依赖库 apk add --no-cache xxx 可以基于php apline镜像自行增加或删除扩展. https ...

  2. DirectX11 With Windows SDK--07 添加光照与常用几何模型

    前言 对于3D游戏来说,合理的光照可以让游戏显得更加真实.接下来会介绍光照的各种分量,以及常见的光照模型.除此之外,该项目还用到了多个常量缓冲区,因此还会提及HLSL的常量缓冲区打包规则以及如何设置多 ...

  3. 第八节:Task的各类Task<TResult>返回值以及通用线程的异常处理方案。

    一. Task的各种返回值-Task<TResult> PS: 在前面章节,我们介绍了Task类开启线程.线程等待.线程延续的方式,但我们并没有关注这些方式的返回值,其实他们都是有返回值的 ...

  4. 给一个Unix域套接字bind一个路径名

    #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <strings.h& ...

  5. 有关于 java native方法

    看java源码时,经常看到native方法后,就没有具体的是实现了. 以前一直有疑惑,今天查了查,看到前辈们的博文才明白: Java的native方法http://blog.csdn.net/wike ...

  6. 3D Slicer中文教程(一)—下载及安装方法

    3D Slicer是用于医学图像信息学,图像处理和三维可视化的开源软件平台. 通过国家卫生研究院和全球开发人员社区的支持,二十多年来,Slicer为医生,研究人员和公众提供了免费,强大的跨平台加工工具 ...

  7. Gradle part1 HelloWorld

    (https://spring.io/guides/gs/gradle/#scratch) ----gradle helloworld----- 1.下载后安装 Unzip the file to y ...

  8. 【原创】大数据基础之Ambari(2)通过Ambari部署ElasticSearch(ELK)

    ambari2.7.3(hdp3.1) 安装 elasticsearch6.3.2 ambari的hdp中原生不支持elasticsearch安装,下面介绍如何通过mpack方式使ambari支持el ...

  9. Groovy闭包

    定义 闭包(Closure)是一种数据类型,它代表一段可执行的代码.它可以作为方法的参数,或者返回值,也可以独立运行,定义如下: def xxx = {parameters -> code}   ...

  10. 列表生成式,迭代器&生成器

    python3中range(10)就 是迭代器 列表生成式 #列表生成式 a=[0,1,2,3,4,5] b=[] for index,i in enumerate(a): a[index]+1 pr ...