first bit of algorithm: if firstchoices<totalspaces, accept