【华为OD机试真题 新系统】1038、SQL记录拆分 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

📅 2026/7/7 0:52:21 👁️ 阅读次数 📝 编程学习
【华为OD机试真题 新系统】1038、SQL记录拆分 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

文章目录

    • 一、题目
      • 🎃题目描述
      • 🎃输入输出
      • 🎃样例1
      • 🎃样例2
      • 🎃样例3
      • 🎃样例4
    • 二、代码与思路参考
      • 🎈C++语言思路
        • 🎉C++代码
      • 🎈Java语言思路
        • 🎉Java代码
      • 🎈Python语言思路
        • 🎉Python代码
      • 🎈C语言思路
        • 🎉 C语言代码
      • 🎈JS语言思路
        • 🎉JS代码
  • 作者:KJ.JK

订阅本专栏后即可解锁在线OJ刷题权限
 
🍂专栏介绍:最新的华为OD机试题目总结,使用C++、Java、Python、C语言、JS五种语言进行解答,每个题目的思路分析都非常详细,支持在线OJ评测刷题!!!!订阅后获取权限,新增图解思路,问题解疑,多样例测试,超过百字的思路参考解析,持续更新,代码仅供学习参考
 
题库学习: 华为OD技术面试手撕真题


一、题目


🎃题目描述

某分布式数据库系统需要将SQL操作日志拆分到多个文件中,现给定一组SQL语句输入(数组格式),请按要求将SQL语句拆分到不同文件中并返回拆分后的文件数量。拆分规则如下:

  • 1、单个数组成员的SQL语句(可能包含多条,按;分隔)按同一行完整保存,不可跨文件拆分,且同一行的语句必须在同一个文件中
  • 2、部分语句带事务标签 [Tn] (n为正整数),如[T1]A;相同事务标签的SQL语句必须保存于同一文件中
  • 3、当单个文件保存的行数超出限制时,需要新建文件;按语句组首次出现的行号顺序处理,优先