Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ListsMoreExercise;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- public class O3TakeSkipRope {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String input = scanner.nextLine();
- List<Integer> numbers = new ArrayList<>();
- List<Character> characters = new ArrayList<>();
- for (int i = 0; i < input.length(); i++) {
- char index = input.charAt(i);
- if (input.charAt(i) >= 48 && input.charAt(i) <= 57) {
- numbers.add(Integer.parseInt(String.valueOf(index)));
- } else {
- characters.add(input.charAt(i));
- }
- }
- List<Integer> take = new ArrayList<>();
- List<Integer> skip = new ArrayList<>();
- for (int i = 0; i < numbers.size(); i++) {
- if (i % 2 == 0) {
- take.add(numbers.get(i));
- } else {
- skip.add(numbers.get(i));
- }
- }
- StringBuilder hiddenMessage = new StringBuilder();
- for (int i = 0; i < numbers.size() / 2; i++) {
- int takeIndex = take.get(i);
- for (int j = 0; j < takeIndex; j++) {
- if (characters.size() == 0) {
- break;
- }
- hiddenMessage.append(characters.get(0));
- characters.remove(0);
- }
- int skipIndex = skip.get(i);
- if (skipIndex > 0) {
- if (characters.size() == 0) {
- break;
- }
- characters.subList(0, skipIndex).clear();
- }
- }
- System.out.println(hiddenMessage);
- }
- }
Add Comment
Please, Sign In to add comment