(41)速算机器人

文章目录


每日一言

愚昧从来没有给人带来幸福;幸福的根源在于知识。------左拉


题目

题目链接:速算机器人

小扣在秋日市集发现了一款速算机器人。店家对机器人说出两个数字(记作 x 和 y),请小扣说出计算指令:

"A" 运算:使 x = 2 * x + y;

"B" 运算:使 y = 2 * y + x。

在本次游戏中,店家说出的数字为 x = 1 和 y = 0,小扣说出的计算指令记作仅由大写字母 A、B 组成的字符串 s,字符串中字符的顺序表示计算顺序,请返回最终 x 与 y 的和为多少。

  • 示例 1:
    输入:s = "AB"
    输出:4
    解释: 经过一次 A 运算后,x = 2, y = 0。 再经过一次 B 运算,x = 2, y = 2。 最终 x 与 y 之和为 4。

提示:

0 <= s.length <= 10

s 由 'A' 和 'B' 组成


解题思路

遍历字符串,通过选择语句来决定走 A 运算还是B 运算

注意:字符串可能为空串

代码

c 复制代码
int calculate(char* s) {
    size_t len = strlen(s);
    if(!len)
        return 1;
    int x=1,y=0;
    for(int i=0;i<len;i++)
    {
        if('A' == s[i])
        {
            x = 2 * x + y;
        }
        else
            y = 2* y + x;
    }
    return x+y;
}

结语

请给自己些耐心,一口吃不成胖子。
山外青山楼外楼,莫把百尺当尽头。
保持空杯心态加油努力吧!


都看到这里啦!真棒(*^▽^*)

可以给作者一个免费的赞赞吗,这将会鼓励我继续创作,谢谢大家

编程小白写作,如有纰漏或错误,欢迎指正


相关推荐
La Pulga17 分钟前
【STM32】WDG看门狗
c语言·stm32·单片机·嵌入式硬件·mcu
BullSmall19 分钟前
《道德经》第三十八章
学习
承渊政道1 小时前
算法复杂度
c语言·数据结构·c++·算法·visual studio
乌暮2 小时前
数据库--JDBC编程
java·数据库·学习
_dindong2 小时前
Linux网络编程:进程间关系和守护进程
linux·运维·服务器·网络·c++·学习
zhilin_tang2 小时前
如何写一个WebRTC ACE音频应用处理模块
linux·c语言·c++
能不能别报错2 小时前
K8s学习笔记(二十四) ingress
笔记·学习·kubernetes
逐步前行3 小时前
C数据结构--数组|矩阵|广义表
c语言·数据结构·矩阵
能不能别报错3 小时前
K8s学习笔记(二十三) 网络策略 NetworkPolicy
笔记·学习·kubernetes
AI_56783 小时前
脑科学支持的Python学习法:每天2小时碎片化训练,用‘神经可塑性’打败拖延症“
开发语言·python·学习