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

网站招标书怎么做51办办网

网站招标书怎么做,51办办网,戴尔的网站建设,做网站年赚千万大家好,我是莫小特。 这篇文章给大家分享 GESP 四级 2023 年 9 月编程题第 2 题:变长编码。 题目链接 洛谷链接:B3870 变长编码 一、完成输入 根据输入格式的描述,输入一个正整数 N,数据范围: 0 ≤ N ≤ 10 18 0 \le N \le 10^{18} 0≤N≤1018,因此使用 long long 类…

image.png

大家好,我是莫小特。
这篇文章给大家分享 GESP 四级 2023 年 9 月编程题第 2 题:变长编码。

题目链接

洛谷链接:B3870 变长编码

image.png

一、完成输入

根据输入格式的描述,输入一个正整数 N,数据范围: 0 ≤ N ≤ 10 18 0 \le N \le 10^{18} 0N1018,因此使用 long long 类型。

long long N;
cin>>N;

输入完成后,我们来分析题意,解决算法。

二、分析题意

根据题目要求,输出一行,输出 N 对应的变长编码的每个字节,每个字节要用 2 位十六进制表示。

所以题目的意思就是要将数字 N 转换成变长编码。

根据题目的描述,要对给定的整数转变成二进制形式。

所以我们要对输入的整数进行处理,转换成二进制的形式。

需要定义一个数组,全部初始化为 0,元素个数我们先定义限制在 10 5 10^5 105

const int num=1e5+10;
int a[num]={0};//初始化数组

对输入的数据进行二进制变化,将转变后的二进制存储数组中。

具体的操作如图示,数组的下标从 1 开始,每次记录。

image.png

int i=1;
while(N!=0)
{a[i]=N%2;//二进制的最高位N/=2;i++;//记录下一位
}

但由于二进制是倒序,原本记录在数组中的高位要变成低位,如图示,原数组下标和二进制下标的规则是两个下标相加等于一个相同的数。

image.png

因此需要一个新的变量来存储正确的二进制数据,根据之前的规律,两个下标相加等于相同的数,也就是 i。

int b[num]={0};
for(int j=1;j<i;j++)
{b[j]=a[i-j];
}

将 b 数组输出,测试转换二进制是否正确。

for(int k=1;k<i;k++)
{cout<<b[k];
}

数据正确,证明二进制转换正确。

image.png
image.png

二进制完成后,来到第二步,将二进制数从低位到高位切分为 7 位。

因此需要在 b 数组中倒序访问 7 个,单独存储在一个数组中,考虑到会有多组数据,因要定义一个二维数组。

int len=i-1;  //二进制位个数
int now=len;  //从低位开始处理

由于编码时是从最低位开始,每7位一组,所以我们需要从 b[len] 开始往前读,now 变量就是当前正在处理位的下标,从后往前。

使用二维数组 group[g][j] 来存储每一组的 7 位,外层下标 g 表示第几组(从 1 开始),内层下标 j 表示这一组中的第几位(二进制位)

注意要先初始化为全 0。

int group[100][10] = {0}; 
http://www.yayakq.cn/news/24692/

相关文章:

  • 动易网站 sql2005wordpress教程网模板
  • 电商网站开发文献汇总自己做的网站如何让别人访问
  • 企业网站优化方式带分页的wordpress模板
  • 苏宁网站建设wordpress 淘宝客网站模板
  • asp网站ftp入侵网站主要的设计内容主题
  • 瀑布流响应式网站模板手机兼职平台app排行榜前十名
  • 中国工程建设监理协会网站网页设计公司有哪些成都
  • 济南网站建设需要多少钱筋郑州做网站
  • 2021中文字幕入口网站制作网站网页设计
  • 济南集团网站建设百度浏览器
  • 夜夜做新郎网站网络架构怎么看
  • 手机在线建网站中国排名第一的策划公司
  • 文章列表插件wordpress临沂网站关键字优化
  • 石家庄集团网站建设国外网站做freelancer
  • 要建设企业网站织梦免费机械网站源码
  • 动态电商网站怎么做免费邮箱登录163登录
  • 宠物交易网站开发做微网站那pc端显示啥
  • 中国建设银行网站的社保板块在哪里网站建设要注意一些什么
  • 重庆网站备案必须到核验点大港手机网站建设
  • 中山网站排名推广网站首页html制作代码
  • 网站建设第一步怎么弄东莞互联网营销网站建设
  • 网站定制技术陕西城乡建设部网站
  • 视频网站怎么做统计做网站南京
  • 怎么建设银行网站注册wordpress 安装百度编辑器
  • 苏中建设集团网站官网职业学校网站建设方案
  • 网站开发过程中感想潍坊seo教程
  • 建网站中企动力优机器人编程
  • 黑龙江 网站建设网站运营模式有哪些
  • 建立链接网站模板做网站技术人员
  • 网站应该如何进行优化广州的十七做网站