首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
2731专题
LOJ #2731 [JOI2016春季合宿]Solitaire (DP、组合计数)
题目链接 https://loj.ac/problem/2731 题解 首先一个很自然的思路是,设\(dp[i][j]\)表示选了前\(i\)列,第\(2\)行第\(i\)列的格子是第\(j\)个被填上的。 还要加个第三维\(0/1\),表示第\(2\)行第\(i\)列不是/是这一列最后一个被填上的(这决定了它是被上下填上还是被左右填上)。 转移: 若第\(2\)行第\(i\)列是棋子,则所有的
阅读更多...
Leetcode—2731.移动机器人【中等】
2023每日刷题(二十二) Leetcode—2731.移动机器人 算法思路 参考自灵茶山艾府 实现代码 class Solution {public:const int MOD = 1e9 + 7;int sumDistance(vector<int>& nums, string s, int d) {int n = nums.size();vector<long long>a
阅读更多...
[leetcode 脑子急转弯] 2731. 移动机器人
题目 有一些机器人分布在一条无限长的数轴上,他们初始坐标用一个下标从 0 开始的整数数组 nums 表示。当你给机器人下达命令时,它们以每秒钟一单位的速度开始移动。 给你一个字符串 s ,每个字符按顺序分别表示每个机器人移动的方向。‘L’ 表示机器人往左或者数轴的负方向移动,‘R’ 表示机器人往右或者数轴的正方向移动。 当两个机器人相撞时,它们开始沿着原本相反的方向移动。 请你返回指令
阅读更多...
[leetcode 脑子急转弯] 2731. 移动机器人
题目 有一些机器人分布在一条无限长的数轴上,他们初始坐标用一个下标从 0 开始的整数数组 nums 表示。当你给机器人下达命令时,它们以每秒钟一单位的速度开始移动。 给你一个字符串 s ,每个字符按顺序分别表示每个机器人移动的方向。‘L’ 表示机器人往左或者数轴的负方向移动,‘R’ 表示机器人往右或者数轴的正方向移动。 当两个机器人相撞时,它们开始沿着原本相反的方向移动。 请你返回指令
阅读更多...
2731. 移动机器人
2731. 移动机器人有一些机器人分布在一条无限长的数轴上,他们初始坐标用一个下标从 0 开始的整数数组 nums 表示。当你给机器人下达命令时,它们以每秒钟一单位的速度开始移动。 给你一个字符串 s ,每个字符按顺序分别表示每个机器人移动的方向。'L' 表示机器人往左或者数轴的负方向移动,'R' 表示机器人往右或者数轴的正方向移动。 当两个机器人相撞时,它们开始沿着原本相反的方向移动。 请
阅读更多...
力扣(LeetCode)2731. 移动机器人(C++)
脑经急转弯+排序 碰撞只改变运动方向,速度始终如"1",且机器人视为无差别的,所以碰撞等于擦肩而过!"机器人碰撞,到底撞没撞,如撞。"因此只考虑每个机器人单方向移动,d秒后停下,即可。 统计所有机器人之间两两距离之和,可以按照贡献法: 一共n个点(机器人),有n-1个间隔(相邻机器人的间距), 每个间隔被统计的次数 = 左侧的点的数量 ( 包含端点 ) ∗ 右侧的点的数量 ( 包含端点 ) 每
阅读更多...