100일 DSA 코딩 챌린지의 76일

발행: (2025년 12월 19일 오후 02:48 GMT+9)
2 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

관련 글

더 보기 »

100일 DSA 코딩 챌린지의 78일차

새로운 도전에 도전합니다: GeeksforGeeks POTD를 매일 풀고 내 솔루션을 공유합니다! 💻🔥 목표: 문제 해결 능력을 갈고닦고, 코딩 실력을 레벨업하며, 배우는 것.

100일 DSA 코딩 챌린지의 82일

문제: 2D Matrix에서 Peak Element 찾기 GeeksforGeeks 문제 링크: https://www.geeksforgeeks.org/problems/find-the-peak-element-in-a-2d-matrix/1 난이도…

100일 dsa 코딩 챌린지의 70일차

!100일 DSA 코딩 챌린지 Day 70의 커버 이미지 https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F...