I was solving a problem related to the scheduling. The problem statement is as below:-

We want to keep a three months workshop in the university in which all the students of the university will participate. All the students will be trained by the lecturers of their own university for two days in a month for a subject of his choice. And similarly he would get the training in the other two months for the other two subjects and all the students will study the three subjects in the complete three months workshop. The students needs to be divided into three groups according to their marks in a test that will be taken before the beginning of the workshop. Now we have to arrange the students groupwise and make batches for ecah group and then schedule each batch in different room under different professor. But the constraint is that a professor can teach only one subject and can give the training for 20 days in a month. Every professor will have to undergo an orientation session which will be scheduled at the seminar hall of the institute after the starting of the workshop and before giving the training to the students.