FA-94543 / Exam timetabling constraints / Member archive
Access-arrangement candidates consume main hall seats · case 03
Main hall seats are reserved for candidates who sit in the separate room.
Case contract
Candidates [id, surname, given, access flag], rooms [room, rows, cols]. Non-access candidates are sorted by case-folded surname, case-folded given name, then id, and take alternate seats (even row and even column indices) room by room in row-major order, labelled room-<row letter><column number>; candidates beyond the seats are UNSEATED. Access candidates go to SEP-1, SEP-2... in the same order. Return id -> seat.
Why this case matters
Seating plans are generated from the timetable's room allocation and must be deterministic and fair.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression: access separation 1 | {"C01": "UNSEATED", "C14": "SEP-1", "C25": "H0-E1", "C37": "UNSEATED", "C41": "H0-A1", "C73": "H0-E3", "C74": "H0-A3", "C86": "H0-C1"} | {"C01": "H0-E3", "C14": "SEP-1", "C25": "H0-C3", "C37": "UNSEATED", "C41": "H0-A1", "C73": "H0-E1", "C74": "H0-A3", "C86": "H0-C1"} | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗