Leetcode—2731.移动机器人【中等】

2023每日刷题(二十二)

Leetcode---2731.移动机器人

算法思路

参考自灵茶山艾府

实现代码

cpp 复制代码
class Solution {
public:
    const int MOD = 1e9 + 7;
    int sumDistance(vector<int>& nums, string s, int d) {
        int n = nums.size();
        vector<long long>arr(n, 0);
        long long ans = 0;
        long long sum = 0;
        for(int i = 0; i < n; i++) {
            arr[i] = (long long)nums[i] + d * ((s[i] & 2) - 1);
        }
        sort(arr.begin(), arr.end());
        sum = arr[0];
        for(int i = 1; i < n; i++) {
            ans = (ans + arr[i] * i - sum) % MOD;
            sum += arr[i];
        }
        return ans;
    }
};

运行结果


之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
tankeven4 分钟前
贪心算法(Greedy Algorithm)详解:从理论到C++实践
c++·算法
Hesionberger4 分钟前
LeetCode72.编辑距离(多维动态规划)
java·开发语言·c++·python·算法
lwf0061646 分钟前
逻辑回归学习笔记-梯度下降求解回归方程
算法·机器学习·逻辑回归
郝学胜-神的一滴6 分钟前
从底层看透Linux高性能服务器:epoll自定义封装与超时清理实战
linux·服务器·c++·网络协议·tcp/ip·unix
人道领域12 分钟前
【LeetCode刷题日记】1047:双栈法与双指针法巧妙消除相邻重复字符
java·算法·leetcode·职场和发展
切糕师学AI12 分钟前
布隆过滤器(Bloom Filter)技术详解
数学·算法
礼拜天没时间.17 分钟前
力扣热题100实战 | 第33期:搜索旋转排序数组——二分查找的变体艺术
算法·leetcode·职场和发展·旋转数组·搜索旋转排序数组
Jenlybein31 分钟前
用 uv 替代 conda,速度飙升(从 0 到 1 开始使用 uv)
后端·python·算法
400分32 分钟前
LangChain 与大模型技术全链路详解
算法·架构
电科一班林耿超33 分钟前
第 14 课:动态规划(DP)—— 算法思想的巅峰,面试的终极分水岭
数据结构·算法·动态规划