OJ练习第183题——移动机器人

news2024/9/22 1:10:49

移动机器人

力扣链接:2731. 移动机器人

题目描述

在这里插入图片描述
在这里插入图片描述

示例

在这里插入图片描述

官解思路

当两个机器人相撞时,它们会沿着原本相反的方向移动。由于机器人之间并没有任何区别,相撞可以看做是穿透,原本左边的机器人相撞后交换为右边的机器人,原本右边的机器人相撞后交换为左边的机器人,这样一来,两个机器人仿佛没有相撞过。因此,我们可以无视相撞,独立计算每个机器人 d 秒后所处的位置。
在这里插入图片描述

Java代码

class Solution {
    static final int MOD = 1000000007;
    public int sumDistance(int[] nums, String s, int d) {
        int n = nums.length;
        long[] pos = new long[n];
        for(int i = 0; i < n; i++) {
            if(s.charAt(i) == 'L') {
                pos[i] = (long) nums[i] - d;
            }else {
                pos[i] = (long) nums[i] + d;
            }
        }
        Arrays.sort(pos);
        long res = 0;
        for(int i = 1; i < n; i++) {
            res += 1L * (pos[i] - pos[i - 1]) * i % MOD * (n - i) % MOD;
            res %= MOD;
        }
        return (int) res;
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1075801.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

短视频视频号矩阵系统源码独立部署开发对接

一、多账号矩阵管理功能&#xff08;基于api接口开发与没有官方接口开发的区别&#xff09; 基于API接口开发&#xff0c;可以通过调用官方提供的接口获取账号信息、创建新账号、更新账号设置等操作&#xff0c;实现自动化的账号管理绑定授权&#xff0c;通过相关的接口开发绑定…

Data security.隐私保护-多方安全计算技术基础

文章目录 Data security.隐私保护-多方安全计算技术基础一、多方安全计算的背景1.定义2.分类2.1不诚实参与方数量2.2敌手行为2.3敌手计算能力2.4输出可达性2.5计算模型2.6腐化策略&#xff08;攻击者确定攻破并控制参与方的策略&#xff09;2.7通信网络 3.设计方法3.1秘密共享&…

镜像仓库harbor安装部署

基础配置 systemctl stop firewalld && systemctl disable firewalld setenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/configharbor wget http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install -y docker-ce docke…

设计模式 - 中介者模式

目录 一. 前言 二. 实现 三. 优缺点 一. 前言 中介者模式又叫调停模式&#xff0c;定义一个中介角色来封装一系列对象之间的交互&#xff0c;使原有对象之间的耦合松散&#xff0c;且可以独立地改变它们之间的交互。 中介者模式可以使对象之间的关系数量急剧减少&#xff0…

成功保研复旦大学!

Datawhale干货 作者&#xff1a;Kiren Wang知乎 个人背 景 背景&#xff1a;纯种三无——四非无rk1无强竞赛无中稿论文 学校&#xff1a;广东地区四非&#xff08;非深大&#xff09; 绩点&#xff1a;第五学期9/815&#xff0c;第六学期6/824&#xff08;学院排名&#xff09…

华为云云耀云服务器L实例评测 | 实例使用教学之高级使用:使用私有镜像、共享镜像创建 HECS

华为云云耀云服务器L实例评测 &#xff5c; 实例使用教学之高级使用&#xff1a;使用私有镜像、共享镜像创建 HECS 介绍华为云云耀云服务器 华为云云耀云服务器 &#xff08;目前已经全新升级为 华为云云耀云服务器L实例&#xff09; 华为云云耀云服务器是什么华为云云耀云服务…

Sentinel Dashboard 接入 Nacos 动态数据源 Zuul 接入 Sentinel 实战

背景 Sentinel Dashboard 默认将限流、熔断等规则保存在内存中&#xff0c;然后同步给连接 Dashboard 的客户端&#xff0c;客户端也是保存在内存中。 那么如果当 Sentinel Dashboard 异常重启&#xff0c;那么之前配置的规则将全部丢失&#xff0c;需要重新进行配置。 其中&a…

第1讲:MyBatis简介与入门

目录 了解MyBatis掌握MyBatis与Hibernate的区别安装使用MyBatis了解MyBatis的基本构架掌握以XML和Java使用MyBatis掌握MyBatis的XML配置文件的使用完成第一个MyBatis程序的编写 什么是MyBatis MyBatis 是一款优秀的持久层框架&#xff0c;它支持定制化 SQL、存储过程以及高级…

TortoiseSVN安装教程结合内网穿透实现公网提交文件到本地SVN服务器

文章目录 前言1. TortoiseSVN 客户端下载安装2. 创建检出文件夹3. 创建与提交文件4. 公网访问测试 前言 TortoiseSVN是一个开源的版本控制系统&#xff0c;它与Apache Subversion&#xff08;SVN&#xff09;集成在一起&#xff0c;提供了一个用户友好的界面&#xff0c;方便用…

uni-app:实现滚动条效果

效果 前&#xff08;这里使用到了强制不换行white-space: nowrap;&#xff09; 后 核心代码 overflow: auto; 或 overflow-x: auto; /* 横向滚动条 */ 注&#xff1a;使用 overflow: auto 属性时&#xff0c;如果内容没有超出容器的宽度或高度&#xff0c;则不会显示对应的滚动…

HT8310:内置电荷泵升压音频功放

HT8310具有AB类和D类的自Y切换功能&#xff0c;在受到D类功放EMI干扰困扰时&#xff0c;可随时切换至AB类音频功放模式&#xff08;此时电荷泵升压功能关闭&#xff09;。HT8310内部固定28dB增益&#xff0c;内置的关断功能使待机电流Z小化&#xff0c;还集成了输出端过流保护、…

百度SEO 5个技巧:通过HelpLook让您的文章收录量实现飞跃!

通过百度SEO&#xff0c;可以让百度搜索引擎更好地了解您的网页。比如&#xff1a; 网页上有什么样的内容 网页的内容匹配何种关键词 网页内容对其他有类似问题的用户是否有帮助 当百度判断您的网页符合用户的搜索意图&#xff0c;就会提升您的网页的结果排名&#xff0c;从…

【密码学】Java实现DH函数时出现“Unsupported secret key algorithm: AES“错误

问题描述 jdk版本&#xff1a;8 使用DH和AES算法&#xff0c;实现密钥的交换和加密&#xff0c;测试时报错 java.security.NoSuchAlgorithmException: Unsupported secret key algorithm: AESat com.sun.crypto.provider.DHKeyAgreement.engineGenerateSecret(DHKeyAgreement…

Flutter - 波浪动画和lottie动画的使用

demo 地址: https://github.com/iotjin/jh_flutter_demo 代码不定时更新&#xff0c;请前往github查看最新代码 波浪动画三方库wave lottie动画 Lottie 是 Airbnb 开发的一款能够为原生应用添加动画效果的开源工具。具有丰富的动画效果和交互功能。 # 波浪动画 https://pub-web…

【计算机网络】poll | epoll

文章目录 1. pollpoll函数参数解析代码解析PollServer代码 poll 特点 2. epoll认识接口epoll_createepoll_ctlepoll_wait 基本原理红黑树就绪队列 1. poll poll函数参数解析 输入 man poll poll的第一个参数是文件描述符 poll的第二个参数为 等待的多个文件描述符(fd)数字层面…

Apache Ranger:(一)安装部署

1.Ranger简介 Apache Ranger提供一个集中式安全管理框架, 并解决授权和审计。它可以对Hadoop生态的组件如HDFS、Yarn、Hive、Hbase等进行细粒度的数据访问控制。通过操作Ranger控制台,管理员可以轻松的通过配置策略来控制用户访问权限。 说白了就是管理大多数框架的授权问题。 …

微信小程序抓包

https://github.com/water-kid/WeChatOpenDevTools 抓包工具 第一次安装成功了&#xff0c;公众号能抓&#xff0c;&#xff0c;小程序报错&#xff0c;&#xff0c;卸载后安装不起了 方法二&#xff1a; 将version.dll 放入 微信所在目录 E:\Program Files\Tencent\WeChat\[…

SpringBoot 如何使用 Ehcache 作为缓存

使用Spring Boot Sleuth进行分布式跟踪 在现代分布式应用程序中&#xff0c;跟踪请求和了解应用程序的性能是至关重要的。Spring Boot Sleuth是一个分布式跟踪解决方案&#xff0c;它可以帮助您在分布式系统中跟踪请求并分析性能问题。本文将介绍如何在Spring Boot应用程序中使…

全息投影技术服务公司【盟云全息】收入急剧下降,存在风险

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 全息投影技术服务公司【盟云全息】MicroCloud Hologram(HOLO)的股价表现今年以来异常出色&#xff0c;年初至今已经上涨了334%以上&#xff0c;猛兽财经将在本文中分析MicroCloud Hologram股价上涨的原因&#xff0c;以及它…

Qt QGridLayout和QFormLayout案例分析

QGridLayout和QFormLayout是Qt中常用的布局管理器&#xff0c;可以用于在应用程序中设置控件的位置和大小。 QGridLayout网格布局(栅格布局) QGridLayout是一个网格布局管理器&#xff0c;可以将控件放置在一个二维网格中。在QGridLayout中&#xff0c;控件可以跨越多个行和列…