Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class TT {
- public static void main(String[] args){
- Scanner sc = new Scanner(System.in);
- String input = sc.nextLine();
- Map<String,List<String>> racerAndRoads = new HashMap<>();
- Map<String,Integer> roadsAndCountOfRacers = new HashMap<>();
- while(!input.equals("END")){
- String[] tokens = input.split("->");
- String token = tokens[0];
- if (token.equals("Add")){
- String road = tokens[1];
- String racer = tokens[2];
- if (!racerAndRoads.containsKey(road)){
- racerAndRoads.put(road,new ArrayList<>());
- racerAndRoads.get(road).add(racer);
- roadsAndCountOfRacers.put(road,1);
- }
- else{
- racerAndRoads.get(road).add(racer);
- roadsAndCountOfRacers.put(road,roadsAndCountOfRacers.get(road)+1);
- }
- //System.out.println(racerAndRoads);
- }
- else if (token.equals("Move")){
- String road = tokens[1];
- String racer = tokens[2];
- String nextRoad = tokens[3];
- if (racerAndRoads.containsKey(road)){
- if (racerAndRoads.get(road).contains(racer)){
- racerAndRoads.get(road).remove(racer);
- roadsAndCountOfRacers.put(road,roadsAndCountOfRacers.get(road)-1);
- if (roadsAndCountOfRacers.get(road)==0){
- racerAndRoads.remove(road);
- }
- //System.out.println(racerAndRoads);
- racerAndRoads.get(nextRoad).add(racer);
- //System.out.println(racerAndRoads);
- }
- }
- //System.out.println(racerAndRoads);
- }
- else if (token.equals("Close")){
- String road = tokens[1];
- racerAndRoads.remove(road);
- //System.out.println(racerAndRoads);
- }
- input = sc.nextLine();
- }
- System.out.println("Practice sessions:");
- for (Map.Entry<String,List<String>> entry : racerAndRoads.entrySet()) {
- System.out.printf("%s%n",entry.getKey());
- for (Map.Entry<String,List<String>> entry2 : racerAndRoads.entrySet()) {
- if (entry.getKey().equals(entry2.getKey())){
- //System.out.printf("++%s%n",entry2.getValue());
- String output = String.join("\n++",entry2.getValue());
- System.out.printf("++%s%n",output);
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement