Ответ: \(k(k-1)\). Пример: возьмём одну изолированную вершину, остальные разобьём на множества \(X\) и \(Y\) размеров \(k\) и \(k-1\), и проведём все рёбра между \(X\) и \(Y\). Тогда степени вершин из \(X\) равны \(k-1\), из \(Y\) равны \(k\), условие выполнено, рёбер \(k(k-1)\).
Докажем оценку. Пусть \(X_i\) — множество вершин степени \(i\), а \(m\) — максимальная степень. Если \(m\le k-1\), то \(2E\le2k(k-1)\), значит \(E\le k(k-1)\).
Если \(m\ge k+1\), возьмём вершину степени \(m\). Все её соседи имеют степень \(m-1\), значит \(|X_{m-1}|\ge m\). Любая вершина из \(X_{m-1}\) имеет \(m-1\) соседей в \(X_m\cup X_{m-2}\), поэтому вместе классы \(X_{m-1},X_m,X_{m-2}\) содержат как минимум \(m+(m-1)>2k\) вершин, противоречие.
Остался случай \(m=k\). Рёбра соединяют только соседние по степени классы, поэтому граф двудолен относительно \(Y=X_k\cup X_{k-2}\cup\cdots\) и \(Z=X_{k-1}\cup X_{k-3}\cup\cdots\). С одной стороны, \(E\le k|Y|\), с другой — \(E\le(k-1)|Z|\). Если \(|Y|\le k-1\), то \(E\le k(k-1)\). Если \(|Y|\ge k\), то \(|Z|\le k\), и \(E\le(k-1)k\). Оценка доказана.