华为2020秋招笔试回顾----技术类笔试第一题

昨天,做了华为技术类笔试题,感叹自己的编程能力和思维还是差太远。每次面试或者笔试的时候就感觉思维能力处于下降一级的状态,回顾一下昨天的笔试题。

第一道是字符串替换的,用c++写了半天,和数组争斗了好久,还是有溢出问题。

改用python相对容易一些,不需要考虑数组长度的问题。

题目大致描述如下:


输入输出格式为:第一个字符为输入或输出字符的长度(包含该位置),随后的字符中若出现‘A’,则在输出中将它替换成‘12 34’,;若出现‘B’,将它替换成‘AB CD’;其他字符保持不变。

示例:

输入:

8 1 2 3 4 5 6 A

 

输出:

9 1 2 3 4 5 6 12 34

 

python实现:

import re
if __name__=='__main__':
    s=input()
    l=0
    if 'A' in s:
        s=re.sub('A','12 34',s)
    if 'B' in s:
        s=re.sub('B','AB CD',s)

    l=len(s.split(' '))
    print(l,s[1:])

 

如有疑问,欢迎留言讨论!!!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值