当前位置: 首页 > news >正文

设计模板网站都有哪些如何制作企业网站

设计模板网站都有哪些,如何制作企业网站,行业网站定位,wordpress cms布局文章目录 一、题目🎃题目描述🎃输入输出🎃样例1 二、思路参考三、代码参考🏆C语言 作者:KJ.JK 🍂个人博客首页: KJ.JK 🍂专栏介绍: 华为OD机试真题汇总,定期…

文章目录

    • 一、题目
      • 🎃题目描述
      • 🎃输入输出
      • 🎃样例1
    • 二、思路参考
    • 三、代码参考
      • 🏆C语言
  • 作者:KJ.JK


🍂个人博客首页: KJ.JK
 
🍂专栏介绍: 华为OD机试真题汇总,定期更新华为OD各个时间阶段的机试真题,每日定时更新,本专栏将使用C语言进行更新解答,包含真题,思路分析,代码参考,欢迎大家订阅学习


一、题目


🎃题目描述

TLV编码是按[Tag Length Value]格式进行编码的,一段码流中的信元用Tag标识,Tag在码流中唯一不重复,Length表示信元Value的长度,Value表示信元的值。
 
码流以某信元的Tag开头,Tag固定占一个字节,Length固定占两个字节,字节序为小端序。
 
现给定TLV格式编码的码流,以及需要解码的信元Tag,请输出该信元的Value。
 
输入码流的16机制字符中,不包括小写字母,且要求输出的16进制字符串中也不要包含小写字母;码流字符串的最大长度不超过50000个字节。


🎃输入输出

输入
输入的第一行为一个字符串,表示待解码信元的Tag;
输入的第二行为一个字符串,表示待解码的16进制码流,字节之间用空格分隔。
 
输出
输出一个字符串,表示待解码信元以16进制表示的Value。


🎃样例1

输入
31
32 01 00 AE 90 02 00 01 02 30 03 00 AB 32 31 31 02 00 32 33 33 01 00 CC输出
32 33说明需要解析的信元的Tag31,从码流的起始处开始匹配,Tag32的信元长度为101 00,小端序表示为1);第二个信元的Tag90,其长度为2;第三个信元的Tag30,其长度为3;第四个信元的Tag31,其长度为202 00),所以返回长度后面的两个字节即可,即32 33

二、思路参考

  1. 读取输入的待解码信元的Tag和码流字符串
  2. 将码流字符串按空格分割为字节的字符串数组,每个字节对应一个十六进制数
  3. 遍历字节数组,逐个读取字节并根据小端序合并得到Length的值
  4. Length占用两个字节,根据小端序意味着第一个字节是低位字节,第二个字节是高位字节
  5. 继续遍历字节数组,当找到与输入的Tag相匹配的字节时,提取后续的Length个字节作为Value。注意,Value的每个字节对应一个十六进制数。将提取的Value转换为对应的整数值,即将每个十六进制数转换为其对应的整数
  6. 输出转换后的整数值,作为解码后的Value。

三、代码参考


🏆C语言

#include <stdio.h>
#include <stdlib.h>
#include <string.h>// 函数:将一个字节的十六进制字符串转换为对应的整数值
int hexToInt(char* hex) {int value;sscanf(hex, "%x", &value);return value;
}int main() {char tag[3];  // 信元的Tagchar byteStream[50001];  // 码流字符串char* byteTokens[50000];  // 字节的字符串数组int byteCount = 0;  // 字节的个数char value[50000];  // 解码后的Valueint length;  // 信元Value的长度// 读取输入的Tag和码流字符串scanf("%s\n", tag);fgets(byteStream, sizeof(byteStream), stdin);// 将码流字符串按空格分割为字节的字符串数组byteTokens[byteCount++] = strtok(byteStream, " ");while (byteTokens[byteCount-1] != NULL) {byteTokens[byteCount++] = strtok(NULL, " ");}// 解析码流,找到对应的Tag并提取Valueint i = 0;while (i < byteCount) {// 根据小端序合并字节得到Length的值length = hexToInt(byteTokens[i+2]) * 256 + hexToInt(byteTokens[i+1]);// 找到对应的Tagif (hexToInt(byteTokens[i]) == hexToInt(tag)) {// 提取后续的Length个字节作为Valuefor (int j = 0; j < length; j++) {value[j] = hexToInt(byteTokens[i+3+j]);}break;}i += (length + 3);}// 输出解码后的值for (int k = 0; k < length; k++) {printf("%02X ", value[k]);}printf("\n");return 0;
}

作者:KJ.JK

http://www.dinnco.com/news/62345.html

相关文章:

  • 火车头提取wordpress抓包数据绍兴seo排名外包
  • dw网站管理与建设互联网广告营销是什么
  • 公司 网站建百度搜索风云榜明星
  • dw做的网站如何使用站长工具官网域名查询
  • 如何搭建论坛网站单页应用seo如何解决
  • 学的网络工程seo搜索引擎推广
  • 12306网站建设花了多少钱网址大全是ie浏览器吗
  • 昆明招聘网站建设普工小工合肥网络推广培训学校
  • 网站开发移动端网站品牌维护
  • 做淘宝网站买个模版可以吗网站关键词优化排名
  • 广州市外贸网站建设搜索引擎调词平台哪个好
  • 企业推广活动网站推广优化排名
  • 南昌做网站优化哪家好百度云盘搜索
  • 做好网站建设工作总结今日新闻快报
  • 太原网站建设方案策划网络运营怎么学
  • 无锡网站优化哪家好百度一下 你知道首页
  • 本地网站搭建流程湖南seo优化首选
  • 湖南 微网站开发与设计比赛网站注册查询官网
  • 怎么用电脑做网站服务器吗公司的seo是什么意思
  • 哈尔滨建设厅网站网站快速收录付费入口
  • 网站建设相关技术方案百度搜题在线使用
  • 什么网站可以做ppt网上销售平台
  • wordpress多重标签谷歌搜索优化
  • 网站建设开票税点网络销售怎么找客源
  • 网站开发的前端框架有哪些国内重大新闻十条
  • 购物网站开发 项目描述龙网网络推广软件
  • 在学做网站还不知道买什么好免费网站怎么注册
  • 做网站需求报告百度关键词关键词大全
  • 去哪找想做网站的客户4414站长平台
  • 网站建设哪家质量好合肥seo招聘