예제 #1
0
if __name__ == "__main__":
  if len(sys.argv) < 2:
    print >> sys.stderr, "You must provide at least two calendars as arguments!"
  else:
    calendars = []

    # Load all calendars as specified by the command line:
    for path in sys.argv[1:]:
      calendars.append(eventlib.load_file(path))

    # The first calendar is the personal calendar:
    personal_calendar = calendars[0]
  
    # The remaining calendars are the event calendars:
    event_calendars = calendars[1:]

    # Find all possible events which don't clash with events in the personal
    # calendar:
    start = time.clock()
    possible = []
    for event_calendar in event_calendars:
      possible += find_possibilities(personal_calendar, event_calendar)
    end = time.clock()

    # Print out the time, number of comparisons to stderr:
    print >> sys.stderr, end - start
    print >> sys.stderr, counter.count
  
    # Print out the list of possibilities to stdout:
    eventlib.save(sys.stdout, possible)
예제 #2
0
    if len(calendars) < 2:
        return calendars[0]
    result = calendars[0]
    for i in range(1, len(calendars)):
        result = merge_events(result, calendars[i])

    return result


# <--[ WRITE CODE HERE ]--

if __name__ == "__main__":
    if len(sys.argv) < 2:
        print >> sys.stderr, "You must provide at least two calendars as arguments!"
    else:
        calendars = []

        for path in sys.argv[1:]:
            calendars.append(eventlib.load_file(path))

        start = time.clock()

        merged = merge_calendars(calendars)

        end = time.clock()

        print >> sys.stderr, end - start
        print >> sys.stderr, counter
        eventlib.save(sys.stdout, merged)