We have discussed greedy algorithm during lectures. A greedy algorithm is an algorithm that recursively construct a set of objects from the smallest possible constituent parts. At each one of the iterations, the algorithm takes the best that it can get right now, without regards for future consequences. The algorithm hopes that by choosing a local optimum at each one of the iterations, it can end up at a global optimum. In this assignment, you will write a program to schedule final examination for the examination department so that no student has two examinations at the same time. The goal of this assignment is to expose you to the implementation of greedy algorithms that solves a problem with constraints. You will use a greedy algorithm to determine an assignment of classes to examination slots (schedules) such that: 1. No student, enrolled in two subjects, is assigned to the same examination slot (schedule.) 2. Any attempt to combine two slots into one would violate rule 1. Input to the program will consist of the name of a data file. This file will contain the following data: The number of students enrolled in the current semester Repeated rows of the following: o Name of the student and the total number of subjects enrolled o The subject code the student is enrolled in. A sample of an input file is as follow: 3 Melissa, 4 CSCI203 CSCI235 CSCI222 CSCI205 Bernard, 4 CSCI213 CSCI222 CSCI204 CSCI203 Terrence, 4 CSCI212 CSCI203 CSCI235 CSCI213
We have discussed greedy algorithm during lectures. A greedy algorithm is an algorithm that recursively construct a set of objects from the smallest possible constituent parts. At each one of the iterations, the algorithm takes the best that it can get right now, without regards for future consequences. The algorithm hopes that by choosing a local optimum at each one of the iterations, it can end up at a global optimum. In this assignment, you will write a program to schedule final examination for the examination department so that no student has two examinations at the same time. The goal of this assignment is to expose you to the implementation of greedy algorithms that solves a problem with constraints. You will use a greedy algorithm to determine an assignment of classes to examination slots (schedules) such that: 1. No student, enrolled in two subjects, is assigned to the same examination slot (schedule.) 2. Any attempt to combine two slots into one would violate rule 1. Input to the program will consist of the name of a data file. This file will contain the following data: The number of students enrolled in the current semester Repeated rows of the following: o Name of the student and the total number of subjects enrolled o The subject code the student is enrolled in. A sample of an input file is as follow: 3 Melissa, 4 CSCI203 CSCI235 CSCI222 CSCI205 Bernard, 4 CSCI213 CSCI222 CSCI204 CSCI203 Terrence, 4 CSCI212 CSCI203 CSCI235 CSCI213
C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 18SA
Related questions
Question
100%
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 5 steps with 1 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning