А есть ли исходные данные для решения такой задачи? Где взять информацию о том, какой из студентов нормальный , и кому куда дозволено регистрироваться? Если студентов N, а курсов М, то получаем матрицу NxM. Вы действительно собираетесь ее заполнять?
В полном списке дисциплин есть иконки, показывающие для какой дисциплины требуется пароль и куда разрешен гостевой доступ. Для каждого студента дисциплины, на которые он уже зарегистрирован, отображаются в отдельном списке. Вам этого не достаточно?