Course + Subject, then no violation of 1NF, 2NF, and 3NF.
Let’s list out all possible functional dependencies:
   
  | 
  
  
   | 
 
Course + Subject is a candidate key. 
Second one that is Course + Lecturer is also a candidate key as we can identify tuples uniquely using it. 
However the determinant of the third one cannot be used as a candidate key because it has duplicates. 
You cannot make Lecturer as a primary key. 
| Now you have a determinant that cannot be set as a primary key, hence it violates BCNF. In order to make the table BCNF table, need to decompose. | 
  
   | 
 
Course + Subject, then no violation of 1NF, 2NF, and 3NF. 
Let’s list out all possible functional dependencies:
Course, Subject → LecturerCourse, Lecturer → SubjectLecturer → Subject| 
          
     “Success - keeping your mind awake and your desire asleep.”      — Walter Scott  |