The first thing to note is that string attributes (as opposed to fields) can't be used in filters, and you'd want single string values for facets (not everything together in a single string), so I don't think your single string attribute suggestion will work out.
An alternative is search on the items in the schedule, get the user ids from that set, and then search across users not in that collection of user ids. It does mean two queries instead of one, but it's a little more obvious and a little less complex.