(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;
}

结语

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


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

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

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


相关推荐
Ziky学习记录15 分钟前
从零到实战:React Router 学习与总结
前端·学习·react.js
sensen_kiss39 分钟前
INT303 Coursework1 爬取影视网站数据(如何爬虫网站数据)
爬虫·python·学习
2401_858936881 小时前
【Linux C 编程】标准 IO 详解与实战:从基础接口到文件操作实战
linux·c语言
red_redemption1 小时前
自由学习记录(116)
学习
r i c k3 小时前
数据库系统学习笔记
数据库·笔记·学习
野犬寒鸦3 小时前
从零起步学习JVM || 第一章:类加载器与双亲委派机制模型详解
java·jvm·数据库·后端·学习
季明洵3 小时前
C语言实现单链表
c语言·开发语言·数据结构·算法·链表
浅念-4 小时前
C语言编译与链接全流程:从源码到可执行程序的幕后之旅
c语言·开发语言·数据结构·经验分享·笔记·学习·算法
ZH15455891314 小时前
Flutter for OpenHarmony Python学习助手实战:API接口开发的实现
python·学习·flutter
爱吃生蚝的于勒4 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习