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

运行结果


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

相关推荐
玖釉-10 分钟前
[Vulkan 学习之路] 11 - 组装流水线:固定功能阶段 (Fixed Functions)
c++·windows·图形渲染
f狐0狸x17 分钟前
【C++修炼之路】C++string的用法
开发语言·c++·string
阿豪只会阿巴21 分钟前
【多喝热水系列】从零开始的ROS2之旅——Day9 初识话题通信:基本命令
c++·笔记·python·ubuntu·ros2
Xの哲學22 分钟前
Linux Tasklet 深度剖析: 从设计思想到底层实现
linux·网络·算法·架构·边缘计算
三流架构师26 分钟前
线性代数资源合集
经验分享
Imxyk32 分钟前
力扣:1553. 吃掉 N 个橘子的最少天数(记忆化搜索,Dijkstra解法)
算法
爱编码的傅同学1 小时前
【今日算法】Leetcode 581.最短无序连续子数组 和 42.接雨水
数据结构·算法·leetcode
码小猿的CPP工坊1 小时前
C++弱引用智能指针std::weak_ptr使用介绍
开发语言·c++
Σίσυφος19001 小时前
线性与非线性 、齐次非齐次
算法
暮色_年华1 小时前
随想3:关于语音采集线程 使用 CFS 调度或者 SCHED_FIFO 的思考
c++