Краткий ответ: \(33\).
Пусть \(q\) — число муравьиных королев, а \(o\) — число обычных муравьёв.
Всего муравьёв:
\[ q+o=1001. \]
Королева занимает \(3\times3=9\) комнат, поэтому всего занято комнат:
\[ 9q+o=n^2, \]
где \(n\) — длина стороны муравейника.
Вычтем первое равенство из второго:
\[ n^2-1001=8q. \]
Значит,
\[ n^2\equiv1001\equiv1\pmod 8. \]
Квадрат числа даёт остаток \(1\) при делении на \(8\) только для нечётного \(n\). Кроме того,
\[ n^2\ge1001 \quad\Rightarrow\quad n\ge32. \]
Наименьшее нечётное число, не меньшее \(32\), — \(33\).
Проверка:
\[ q=\frac{33^2-1001}{8} =\frac{1089-1001}{8}=11, \]
\[ o=1001-11=990. \]
Комнаты:
\[ 11\cdot9+990=99+990=1089=33^2. \]
Значит, такой муравейник возможен, и наименьшая длина его стороны — \(\boxed{33}\).
