第76天:100天DSA编码挑战

发布: (2025年12月19日 GMT+8 13:48)
1 分钟阅读
原文: 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 并分享我的解法!💻🔥 目标:提升问题解决能力,升级编程水平,并学习……

代码编年史

Advent of Code 2024 Day 25 https://adventofcode.com/2024/day/25 Part 1 一个很酷的年终方式。这看起来是个有趣的挑战,我很期待去尝试它……

第1天/30 天 回到 DSA 挑战

DSA - 回顾了 DSA 的笔记。- 使用 hashmap 和补数技术解决了 Two Sum 问题。- 与其存储每个元素并检查和,st...