35 lines
806 B
Java
35 lines
806 B
Java
|
|
public class Competition {
|
|
|
|
private List<Athlete> runners;
|
|
private BinarySearchTree<Athlete> leaderboard;
|
|
private RaceSimulator sim;
|
|
|
|
public Competition() {
|
|
runners = new List<>();
|
|
leaderboard = new BinarySearchTree<>();
|
|
sim = new RaceSimulator();
|
|
}
|
|
|
|
public void newRunner(String name) {
|
|
runners.append(new Athlete(name));
|
|
}
|
|
|
|
public void simulate() {
|
|
runners.toFirst();
|
|
while (runners.hasAccess()) {
|
|
sim.simulate(runners.getContent());
|
|
leaderboard.insert(runners.getContent());
|
|
runners.next();
|
|
}
|
|
|
|
leaderboard.printInOrder();
|
|
}
|
|
|
|
public Athlete[] top3() {
|
|
Athlete[] top = new Athlete[3];
|
|
//TODO
|
|
return top;
|
|
}
|
|
}
|