Split them into 3 separate offices with 6 people a piece.
I don't think the argument is that every worker needs their own personal office but clumping an entire company's worth of staff into one big room isn't an effective place to do work.
This, definitely. The team I'm on needs a shared lab space where we have a guaranteed area to set equipment up and collaborate during integration. Instead we're spread across the whole office, and there's never enough space in the shared lab so some of us have to do noisy things in cubicles.
My first software developer job was working in a converted house where each large room had about 10 people in it. Each room was usually split up so that you had about 2 or 3 people grouped together, depending on the project.
Overall it was a very good layout. Out of all the places I've worked at, it comes in second to working at home (which I now do exclusively). It seems to be a good compromise between open-plan and giving each person their own office.
I don't think the argument is that every worker needs their own personal office but clumping an entire company's worth of staff into one big room isn't an effective place to do work.