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

运行结果


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

相关推荐
下一站春风里1 小时前
位运算完整学习笔记:按位与(&)+ 异或(^)
开发语言·c++·算法
DRobot1 小时前
【机械制图与CAD实战(二十五)】螺纹的表示方法
算法·机械制图
用户老李1 小时前
卡尔曼滤波自学教程 10:无迹卡尔曼滤波(UKF)
算法
救救孩子把2 小时前
AI面试八股文-23_23-Agent可观测性与生产监控面试题
人工智能·面试·职场和发展·agent·langsmith·langfuase
深圳市益普科技有限公司3 小时前
半导体良率管理YMS:良率与设备参数的相关性,先拉哪几组数据
人工智能·python·算法
努力努力再努力wz3 小时前
【C++高阶系列】C++20 协程底层原理:函数为什么能暂停?从状态机到 Task,彻底串起挂起、恢复与协程调度
开发语言·c++·c++20·1024程序员节
程序员清风4 小时前
算法题中的边界条件、测试与调试
开发语言·算法·kotlin
划破黑暗的第一缕曙光4 小时前
[C++]:4.模板
c++·template·模板·函数模版·类模版
十五年专注C++开发4 小时前
pybind11:一个跨C++和Python平台的编程库
开发语言·c++·python·pybind11
CodeYp20194 小时前
第11讲:stack 和 queue
开发语言·c++·queue·stack