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 FuncionInfernoIII {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- List<Integer>gems= Arrays.stream(scanner.nextLine().split("\\s+")).map(Integer::parseInt).collect(Collectors.toList());
- List<Integer>manipulated=new ArrayList<>();
- while(true){
- String[]input=scanner.nextLine().split(";");
- String command=input[0];
- if(command.equals("Forge")){
- break;
- }
- String filter=input[1];
- int parameter=Integer.parseInt(input[2]);
- if(parameter==0){
- continue;
- }
- switch (command){
- case"Exclude":
- manipulated.clear();
- manipulated.addAll(gems);
- sum(filter,parameter,gems);
- break;
- case"Reverse":
- gems.clear();
- gems.addAll(manipulated);
- break;
- }
- }
- gems.stream().forEach(a->{
- System.out.print(a+" ");
- });
- }
- public static void sum(String filter,int parameter,List<Integer>gems){
- switch (filter){
- case"Sum Left":
- if(gems.get(0)==parameter){
- gems.remove(0);
- return;
- }
- for (int i = 1; i <gems.size() ; i++) {
- if(gems.get(i)+gems.get(i-1)==parameter){
- gems.remove(i);
- }
- }
- break;
- case"Sum Right":
- if(gems.get(gems.size()-1)==parameter){
- gems.remove(gems.size()-1);
- return;
- }
- for (int i = 0; i <gems.size()-1 ; i++) {
- if(gems.get(i)+gems.get(i+1)==parameter){
- gems.remove(i);
- }}
- break;
- case"Sum Left Right":
- if(gems.get(gems.size()-1)+gems.get(gems.size()-2)==parameter){
- gems.remove(gems.size()-1);
- }
- if(gems.get(0)+gems.get(1)==parameter){
- gems.remove(0);
- }
- for (int i = 1; i <gems.size()-1 ; i++) {
- if(gems.get(i)+gems.get(i+1)+gems.get(i-1)==parameter){
- gems.remove(i);
- }
- }
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement