Java-Fundamentals-Regular-Expressions-More-Exercise - задача 2. Rage Quit
Здравейте колеги,
Здачата е:
https://softuni.bg/trainings/resources/officedocument/41895/more-exercise-problem-descriptions-java-fundamentals-may-2019/2342
Решението ми :
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String strInput = sc.nextLine().toUpperCase();
        Pattern p = Pattern.compile("(\\D+\\d+)");
        String result = "";
        String unique = "";
        String letters = strInput.replaceAll("[\\d]", "");
        for (int i = 0; i < letters.length(); i++) {
            if (unique.indexOf(letters.charAt(i)) < 0) {
                unique = unique + letters.charAt(i);
            }
        }
        Matcher m = p.matcher(strInput);
        while (m.find()) {
            String token = m.group();
            int repeatCount = Integer.parseInt(token.replaceAll("\\D", ""));
            String lettersToken = token.replaceAll("\\d", "");
            for (int r = 0; r < repeatCount; r++) {
                result +=lettersToken;
            }
        }
        System.out.printf("Unique symbols used: %d%n", unique.length());
        System.out.println(result);
    }
}
Дава таймаут на повечето тестове.
Моля за едно работещо решение , за да се ориентирам къде ми куца логиката.