华为OD题目 csv格式的数据 字符串 用C没写出来

这题对于嵌入式mcu的人来说,太难为了。不想解了,烂摆。有心情再说把。

将一个csv格式的数据文件中包含有单元格引用的内容替换为对应单元格内容的实际值。

Comma seprated values(CSV)逗号分隔值,csv格式的数据文件使用逗号作为分隔符将各单位的内容进行分隔。

输入描述

  1. 输入只有一行数据,用逗号分隔每个单元格,行尾没有逗号。最多26个单元格,对应编号A-Z。

  2. 每个单元格的内容包含字母和数字,以及使用<>分隔的单元格引用,例如:<A>表示引用第一个单元的值。

  3. 每个单元格的内容,在替换前和替换后均不超过100个字符。

  4. 引用单元格的位置不受限制,运行排在后面的单元格被排在前面的单元格引用。

  5. 不存在循环引用的情况,比如下面这种场景是不存在的:

A单元格:aCd<B>8u

B单元格:kAy<A>dzqo

  1. 不存在多重<>的情况,一个单元格只能引用一个其他单元格。比如下面这种场景是不存在的:

A单元格:aCd8u

B单元格:kAydzqo

C单元格:y<<A><B>>d

输出描述:

输出所有单元格展开的内容,单元格之间用逗号分隔。处理过程中出现错误时,输出字符串"-1"表示出错。

示例1

输入1,2<A>00

输出1,2100

说明

第二个单元中有对A单元的引用,A单元格的值为1,替换时,将A单元的内容替代<A>的位置,并和其他内容合并。

示例2

输入<B>12,1

输出

112,1

说明

第一个单元中有对B单元的引用,B单元格的值为1,替换时,将第二个数据单元的内容替代<B>的位置,并和其他内容合并。

示例3

输入

<B<12,1

输出

-1

说明

第一个单元中有错误的单元格引用方式,输出-1

这种题目对于嵌入式mcu工程师来说着实有点吃力(还不如考考烙铁焊接能力)

相关推荐
devmoon几秒前
运行时(Runtime)是什么?为什么 Polkadot 的 Runtime 可以被“像搭积木一样”定制
开发语言·区块链·智能合约·polkadot·runtmie
时艰.1 分钟前
Java 并发编程 — 并发容器 + CPU 缓存 + Disruptor
java·开发语言·缓存
忆~遂愿15 分钟前
GE 引擎进阶:依赖图的原子性管理与异构算子协作调度
java·开发语言·人工智能
沐知全栈开发19 分钟前
API 类别 - 交互
开发语言
人道领域40 分钟前
SSM框架从入门到入土(AOP面向切面编程)
java·开发语言
铅笔侠_小龙虾40 分钟前
Flutter 实战: 计算器
开发语言·javascript·flutter
2的n次方_1 小时前
Runtime 执行提交机制:NPU 硬件队列的管理与任务原子化下发
c语言·开发语言
2501_944711431 小时前
JS 对象遍历全解析
开发语言·前端·javascript
凡人叶枫2 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
Tony Bai2 小时前
再见,丑陋的 container/heap!Go 泛型堆 heap/v2 提案解析
开发语言·后端·golang