【华为OD机试真题】完美走位(C++&C&java&python)满分 详细代码注释 代码解读

获得完美走位

时间限制:1s空间限制:256MB限定语言:不限

题目描述:

在第一人称射击游戏中,玩家通过键盘的A、S、D、W四个按键控制游戏人物分别向 左、向后、向右、向前进行移动,从而完成走位。假设玩家每按动一次键盘,游戏人 物会向某个方向移动一步,如果玩家在操作一定次数的键盘并且各个方向的步数相同 时,此时游戏人物必定会回到原点,则称此次走位为完美走位。现给定玩家的走位(例如:ASDA),请通过更换其中一段连续走位的方式使得原走位 能够变成一个完美走位。其中待更换的连续走位可以是相同长度的任何走位。请返回待更换的连续走位的最小可能长度。若果原走位本身是一个完美走位,则返回0。

输入描述:

输入为由键盘字母表示的走位s,例如:ASDA

输出描述:

输出为待更换的连续走位的最小可能长度

补充说明:

1、走位长度1<=s.length<=10^5
2、s.length是4的倍数
3、s中只含有’A’,‘S’,‘D’,'W’四种字符

示例1

输入:

ASDW
输出:
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TechLounge

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值