Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- int n = Integer.parseInt(scanner.nextLine());
- List<String> attacked = new ArrayList<>();
- List<String> destroyed = new ArrayList<>();
- for (int i = 0; i < n; i++) {
- String message = scanner.nextLine();
- int add = 0;
- for (int j = 0; j < message.length(); j++) {
- char symbol = message.toLowerCase().charAt(j);
- if (symbol == 's' || symbol == 't' || symbol == 'a' || symbol == 'r') {
- add++;
- }
- }
- StringBuilder decryptedMesaage = new StringBuilder();
- for (int j = 0; j < message.length(); j++) {
- char symbol = (char) (message.charAt(j) - add);
- decryptedMesaage.append(symbol);
- }
- Pattern pattern = Pattern.compile(".*?@(?<planet>[a-zA-Z]+)[^@\\-!:>]*:(\\d+)[^@\\-!:>]*!(?<type>[AD])![^@\\-!:>]*->(\\d+)");
- Matcher matcher = pattern.matcher(decryptedMesaage);
- if (matcher.find()) {
- String planet = matcher.group("planet");
- String type = matcher.group("type");
- if (type.equals("A")) {
- attacked.add(planet);
- } else if (type.equals("D")) {
- destroyed.add(planet);
- }
- }
- }
- System.out.println("Attacked planets: " + attacked.size());
- if (!attacked.isEmpty()) {
- attacked
- .stream()
- .sorted((e1, e2) -> e1.compareTo(e2))
- .forEach(e -> System.out.println("-> " + e));
- }
- System.out.println("Destroyed planets: " + destroyed.size());
- if (!destroyed.isEmpty()) {
- destroyed
- .stream()
- .sorted((e1, e2) -> e1.compareTo(e2))
- .forEach(e -> System.out.println("-> " + e));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement