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

【牛客刷题】 01字符串按递增长度截取转换详解

文章目录

  • 一、题目介绍
    • 1.1 输入描述
    • 1.2 输出描述
    • 1.3 示例分析
  • 二、解题思路
    • 2.1 核心问题分析
    • 2.2 关键算法设计
    • 2.3 算法步骤
  • 三、代码实现
    • 关键代码解析
  • 四、复杂度分析
  • 五、示例演示
    • 输入字符串:`"1011011101"`
    • 输入字符串:`"10100110011110"`
  • 六、边界处理技巧
  • 总结

一、题目介绍

给定一个01字符串(仅包含’0’和’1’的字符串),需要按照特定规则截取子串并转换为十进制整数:

  1. 截取规则
    • 从长度1开始截取
    • 每次截取长度递增1(1→2→3→…→9)
    • 达到长度9后重置为1,继续循环
  2. 终止条件:当剩余字符不足当前截取长度时停止

1.1 输入描述

  • 一个仅包含’0’和’1’的字符串(长度≤1000)
  • 示例输入:"01001100"

1.2 输出描述

  • 十进制整数列表,表示每次截取的二进制子串转换结果
  • 示例输出:[0, 2, 3]

1.3 示例分析

输入字符串:"01001100"
截取过程:

  1. 长度1:"0" → 二进制0 = 十进制0
  2. 长度2:"10" → 二进制10 = 十进制2
  3. 长度3
http://www.dtcms.com/a/338016.html

相关文章:

  • 【MyBatis-Plus】一、快速入门
  • Day17: 数据魔法学院:用Pandas打开奇幻世界
  • MySQL面试题:MyISAM vs InnoDB?聚簇索引是什么?主键为何要趋势递增?
  • 从“换灯节能”到“智能调光”:城市智慧照明技术升级的节能革命
  • LangChain4j (3) :AiService工具类、流式调用、消息注解
  • 吴恩达 Machine Learning(Class 2)
  • 数字时代著作权侵权:一场资本与法律的博弈
  • 「Flink」业务搭建方法总结
  • 嵌入式设备Lwip协议栈实现功能
  • 摔倒检测数据集:1w+图像,yolo标注
  • 02.Linux基础命令
  • 8.18 机器学习-决策树(1)
  • docker部署flask并迁移至内网
  • Zephyr下控制ESP32S3的GPIO口
  • RK3568 NPU RKNN(六):RKNPU2 SDK
  • FlycoTabLayout CommonTabLayout 支持Tab选中字体变大 选中tab的加粗效果首次无效的bug
  • 探索性测试:灵活找Bug的“人肉探测仪”
  • 前端 大文件分片下载上传
  • 宝塔面板多Python版本管理与项目部署
  • excel表格 Vue3(非插件)
  • day25|学习前端js
  • Linux: RAID(磁盘冗余阵列)配置全指南
  • 损失函数与反向传播 小土堆pytorch记录
  • FPGA-Vivado2017.4-建立AXI4用于单片机与FPGA之间数据互通
  • 计算机组成原理(9) - 整数的乘除法运算
  • js计算两个经纬度之间的角度
  • Python字符串连接与合并工程实践:从基础到高性能解决方案
  • 【笔记】位错的定义和分类
  • B站 韩顺平 笔记 (Day 22)
  • 【人工智能】2025年AI代理失控危机:构建安全壁垒,守护智能未来