Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class RageQuit {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String input = scanner.nextLine().toUpperCase();
- StringBuilder output = new StringBuilder();
- Pattern patternUnique = Pattern.compile("[^\\d]");
- Matcher matchUnique = patternUnique.matcher(input);
- int countUnique = 0;
- StringBuilder uniqueString = new StringBuilder();
- while (matchUnique.find()) {
- String unique = matchUnique.group();
- if (uniqueString.indexOf(unique) == -1) {
- countUnique++;
- uniqueString.append(unique);
- }
- }
- Pattern patternDigit = Pattern.compile("\\d+");
- Matcher matcherDigit = patternDigit.matcher(input);
- Pattern patternSymbol = Pattern.compile("[^\\d]+");
- Matcher matcherSymbol = patternSymbol.matcher(input);
- while (matcherDigit.find() && matcherSymbol.find()) {
- String sequence = matcherSymbol.group();
- int repeat = Integer.parseInt(matcherDigit.group());
- for (int i = 0; i < repeat; i++) {
- output.append(sequence);
- }
- }
- System.out.printf("Unique symbols used: %d\n", countUnique);
- System.out.println(output);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement