第76天:100天DSA编码挑战

发布: (2025年12月19日 GMT+8 13:48)
1 min read
原文: Dev.to

Source: Dev.to

问题

Bus Conductor – GeeksforGeeks
难度: 简单
准确率: 75.3%

示例

示例 1

  • 输入: chairs = [2, 2, 6, 6], passengers = [1, 3, 2, 6]
  • 输出: 4
  • 解释:
    • 第一个乘客从位置 1 移动到 2(1 步)。
    • 第二个乘客从位置 3 移动到 6(3 步)。
    • 第三和第四个乘客已经坐在椅子上(各 0 步)。
    • 总步数 = 1 + 3 + 0 + 0 = 4

示例 2

  • 第一个乘客从位置 2 移动到 1,使用 1 步。
  • 第二个乘客从位置 7 移动到 5,使用 2 步。
  • 第三个乘客从位置 4 移动到 3,使用 1 步。
  • 总步数: 1 + 2 + 1 = 4

约束

  • (1 \le n \le 10^5)
  • (1 \le \text{chairs}[i], \text{passengers}[j] \le 10^4)

解法

class Solution:
    def findMoves(self, chairs, passengers):
        chairs.sort()
        passengers.sort()
        moves = 0
        for c, p in zip(chairs, passengers):
            moves += abs(c - p)
        return moves
Back to Blog

相关文章

阅读更多 »

第78天:100天DSA编程挑战

接受新的挑战:每天解答 GeeksforGeeks POTD 并分享我的解法!💻🔥 目标:提升问题解决能力,升级编程水平,并学习……

100 天 DSA 编码挑战的第 82 天

问题 在二维矩阵中寻找峰值元素 GeeksforGeeks 题目链接 https://www.geeksforgeeks.org/problems/find-the-peak-element-in-a-2d-matrix/1 难度...

第70天:100天DSA编码挑战

第70天的100天DSA编码挑战封面图片 https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F...