-
Notifications
You must be signed in to change notification settings - Fork 1
/
OutputLibraries.java
46 lines (36 loc) · 1.25 KB
/
OutputLibraries.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import java.util.*;
/**
* OutputLibraries
*/
public class OutputLibraries implements OutputData {
private List<Library> libraries;
private int problemDays;
public OutputLibraries(List<Library> libraries, int problemDays) {
this.libraries = libraries;
this.problemDays = problemDays;
}
public String getOutput() {
String output = "";
int score = 0;
int remainingDays = problemDays;
// first line: how many libraries for scanning
output += libraries.size() + "\n";
// other lines: for each library...
for (Library library : libraries) {
// the first line has the library name...
output += library.getLibraryName() + " ";
remainingDays -= library.getSignupTime();
List<Book> booksForSignup = library.getBooksToSend(remainingDays);
// and how many books...
output += booksForSignup.size() + "\n";
// the second line has the books
for (Book book : booksForSignup) {
output += book.getId() + " ";
score += book.getValue();
}
output += "\n";
}
System.out.println("Output score: " + score);
return output;
}
}