Важное условие! Во всех задачах этого контеста запрещается использовать дополнительные массивы!
Фактически решение задачи написано в самой задаче.
Создадим три массива длины N - b , b1 и pom.
В массив b считаем входные данные.
1 действие - в массив b1 , на тоже место что и в массиве b, перенесём всех учеников из b, которые могут написать на пять.
2 действие:
Идём по всему массиву b. Есои мы встречаем четвёрочника, то смотрим есть ли среди его соседей люди, на писавшие на пять. Если есть - помечаем, что данный ученик списывает(в массиве pom) и в массив b1 переносим 5. Иначе просто переносим в b1 4.
Для троечников и двоечников делаем те же самые действия - смотрим есть ли среди соседей самостоятельно пишущие ученики, знающие материал лучше нас, и среди них выбираем лучшего.
Ответом будет массив b1.