Suppose you are working on creating an automatic course planner for WWU students. A student can get a total ofn courses, labeled from 0 ton - 1. Some courses may have prerequisites, for example, to take course 241 you have to first take course 145, which is expressed as a pair: [241, 145] (the current course, the prerequisite of the current course). Given the total number of courses and a list of prerequisite pairs, you need to: Determine if it is possible to finish taking the n courses. If not, print "It is impossible to take all the given courses." If yes, print "It is possible to take all the given courses.", and move to the next step. Generate one schedule of the given courses (prerequisites have to be scheduled first for any courses). Print the courses out with white spaces as separators. There might be multiple valid schedules, but you only need to generate one of them.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Please answer the question in the screenshot. The language used is Java. Please provide the code to the question with an explanation. 

Please use the below code as a starting point. 

import java.util.*;

public class CoursePlanner {
// this method prints out: whether it is possible to take all the given courses and
// one possible schedule for the given courses
public static void plan(int numberOfCourses, int[][] prerequisites) {
return;
}

// this is a helper method for plan; it returns a boolean to indicate if a given series of courses can be possibly scheduled
public static boolean check(int numberOfCourses, int[][] prerequisites) {
// remove these two lines
if (RightSolution.check(numberOfCourses, prerequisites)) return false;
else return true;
}
}

Suppose you are working on creating an automatic course planner for WWU students.
A student can get a total ofn courses, labeled from 0 ton - 1.
Some courses may have prerequisites, for example, to take course 241 you have to first
--.
take course 145, which is expressed as a pair: [241, 145] (the current course, the
prerequisite of the current course).
Given the total number of courses and a list of prerequisite pairs, you need to:
Determine if it is possible to finish taking the n courses. If not, print “It is
impossible to take all the given courses." If yes, print "It is possible to take all
the given courses.", and move to the next step.
Generate one schedule of the given courses (prerequisites have to be scheduled
first for any courses). Print the courses out with white spaces as separators.
There might be multiple valid schedules, but you only need to generate one of
them.
Еxample 1:
4, [[1,0], [2,0], [3,1]]
Output:
It is possible to take all the given courses.
A possible schedule is 0, 1, 2, 3.
Explanation:
There are a total of 4 courses to take. To take courses 1 or 2 you should take course 0
first. To take course 3, you should take 1 first.
Transcribed Image Text:Suppose you are working on creating an automatic course planner for WWU students. A student can get a total ofn courses, labeled from 0 ton - 1. Some courses may have prerequisites, for example, to take course 241 you have to first --. take course 145, which is expressed as a pair: [241, 145] (the current course, the prerequisite of the current course). Given the total number of courses and a list of prerequisite pairs, you need to: Determine if it is possible to finish taking the n courses. If not, print “It is impossible to take all the given courses." If yes, print "It is possible to take all the given courses.", and move to the next step. Generate one schedule of the given courses (prerequisites have to be scheduled first for any courses). Print the courses out with white spaces as separators. There might be multiple valid schedules, but you only need to generate one of them. Еxample 1: 4, [[1,0], [2,0], [3,1]] Output: It is possible to take all the given courses. A possible schedule is 0, 1, 2, 3. Explanation: There are a total of 4 courses to take. To take courses 1 or 2 you should take course 0 first. To take course 3, you should take 1 first.
Ехample 2:
2, [[1,01,[0,1]]
Output:
It is impossible to take all the given courses.
Explanation:
There are a total of 2 courses to take. To take course 1 you should have finished course
0, and to take course 0 you should also have finished course 1.
This class needs to be named “CoursePlanner". The methods that solve the problem
w
are arranged as
plan: this method returns no value and prints out (b) whether it is possible to
take all the given courses and (b) what a possible schedule looks like.
check: this method returns a boolean value to indicate whether it is possible to
take all the given courses. This method can be seen as a helper for plan
Transcribed Image Text:Ехample 2: 2, [[1,01,[0,1]] Output: It is impossible to take all the given courses. Explanation: There are a total of 2 courses to take. To take course 1 you should have finished course 0, and to take course 0 you should also have finished course 1. This class needs to be named “CoursePlanner". The methods that solve the problem w are arranged as plan: this method returns no value and prints out (b) whether it is possible to take all the given courses and (b) what a possible schedule looks like. check: this method returns a boolean value to indicate whether it is possible to take all the given courses. This method can be seen as a helper for plan
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY