Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.List;
- import java.util.Scanner;
- import java.util.stream.Collectors;
- public class GrainsOfSands {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- ArrayList<Integer> list = Arrays.stream(sc.nextLine()
- .split(" ")).map(Integer::parseInt)
- .collect(Collectors.toCollection(ArrayList::new));
- String input = sc.nextLine();
- while (!input.equals("Mort")){
- String[] tokens = input.split(" ");
- String command = tokens[0];
- int value = Integer.parseInt(tokens[1]);
- if(command.equals("Add")){
- list.add(value);
- }else if(command.equals("Remove")){
- if(list.contains(value)){
- list.remove(Integer.valueOf(value));
- }
- else if (value < list.size() && value >= 0){
- list.remove(value);
- }
- }
- else if(command.equals("Replace")){
- int replacement = Integer.parseInt(tokens[2]);
- if(list.contains(value)){
- list.set(list.indexOf(value),replacement);
- }
- }else if(command.equals("Increase")){
- int increase = returnBiggerValue(list,value);
- if(increase == -1){
- value = list.get(list.size()-1);
- for (int i = 0; i < list.size(); i++) {
- list.set(i,list.get(i)+value);
- }
- }else {
- for (int i = 0; i < list.size(); i++) {
- list.set(i,list.get(i) + increase);
- }
- }
- }else if(command.equals("Collapse")){
- for (int i = 0; i < list.size(); i++) {
- if(list.get(i) < value){
- list.remove(i);
- i--;
- }
- }
- }
- input = sc.nextLine();
- }
- for (Integer integer : list) {
- System.out.print(integer + " ");
- }
- }
- private static int returnBiggerValue(List<Integer> nums , int value){
- for (int i = 0; i < nums.size(); i++) {
- if(nums.get(i) >= value) {
- return nums.get(i);
- }
- }return -1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement