input: from typing import List
  
  def count_free_workdays(days: int, meetings: List[List[int]]) -> int:
      """
      Given a positive integer days which indicates the total number of work days available for an employee (starting from day 1), and a 2D list meetings where meetings[i] = [start_i, end_i] indicates the start and end days of the ith meeting (inclusive).
  
      Return the number of days the employee is available for work and has no scheduled meetings.
  
      Note that:
      Meetings can overlap.
  
      Examples:
      >>> days = 10, meetings = [[5,7],[1,3],[9,10]]
      2
      >>> days = 5, meetings = [[2,4],[1,3]]
      1
  
      Constraints:
      1 <= days <= 10^9
      1 <= length of meetings <= 10^5
      meetings[i].length == 2
      1 <= meetings[i][0] <= meetings[i][1] <= days
      """
output:     # Write a list to track which days are occupied by meetings
      occupied_days = [False] * (days + 1)
  
      # Mark the days that are occupied by meetings
      for meeting in meetings:
          start, end = meeting
          for day in range(start, end + 1):
              occupied_days[day] = True
  
      # Count the number of days that are not occupied by meetings
      free_days = 0
      for day in range(1, days + 1):
          if not occupied_days[day]:
              free_days += 1
  
      return free_days