Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Scanner;
- import java.util.stream.Collectors;
- public class third {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String[] items = scanner.nextLine().split("\\s+");
- ArrayList<Integer> targets = new ArrayList<>();
- for (String item : items) {
- int number = Integer.parseInt(item);
- targets.add(number);
- }
- String input = scanner.nextLine();
- while (!input.equals("End")) {
- String[] tokens = input.split("\\s+");
- String command = tokens[0];
- switch (command) {
- case "Shoot":
- int index = Integer.parseInt(tokens[1]);
- int power = Integer.parseInt(tokens[2]);
- if (index >= 0 && index <= targets.size()) {
- if (power > targets.get(index)) {
- targets.remove(index);
- } else {
- targets.set(index, targets.get(index) - power);
- }
- }
- break;
- case "Add":
- int addIndex = Integer.parseInt(tokens[1]);
- int value = Integer.parseInt(tokens[2]);
- if (addIndex >= 0 && addIndex <= targets.size()) {
- targets.add(addIndex, value);
- } else {
- System.out.println("Invalid placement!");
- }
- break;
- case "Strike":
- int strikeIndex = Integer.parseInt(tokens[1]);
- int radius = Integer.parseInt(tokens[2]);
- int before = strikeIndex - radius;
- int next = strikeIndex + radius;
- if (before >= 0 && before < strikeIndex && next >strikeIndex && next <= targets.size()) {
- targets.remove(next);
- targets.remove(strikeIndex);
- targets.remove(before);
- } else {
- System.out.println("Strike missed!");
- }
- break;
- }
- input = scanner.nextLine();
- }
- for (Integer target : targets) {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment