Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def exchange_func(array, exch_index):
- if exch_index >= len(array):
- print("Invalid index")
- else:
- first_slice = array[:exch_index + 1]
- second_slice = array[exch_index + 1:]
- array = second_slice + first_slice
- return array
- def max_func(array, odd_or_even):
- even_elements = []
- odd_elements = []
- for element in array:
- if element % 2 == 0:
- even_elements.append(element)
- else:
- odd_elements.append(element)
- if odd_or_even == "odd":
- if len(odd_elements) < 1:
- print("No matches")
- else:
- max_odd = max(odd_elements)
- for i in range(len(array) - 1, -1, -1):
- if array[i] == max_odd:
- print(i)
- break
- elif odd_or_even == "even":
- if len(even_elements) < 1:
- print("No matches")
- else:
- max_even = max(even_elements)
- for i in range(len(array) - 1, -1, -1):
- if array[i] == max_even:
- print(i)
- break
- def min_func(array, odd_or_even):
- even_elements = []
- odd_elements = []
- for element in array:
- if element % 2 == 0:
- even_elements.append(element)
- else:
- odd_elements.append(element)
- if odd_or_even == "odd":
- if len(odd_elements) < 1:
- print("No matches")
- else:
- min_odd = min(odd_elements)
- for i in range(len(array) - 1, -1, -1):
- if array[i] == min_odd:
- print(i)
- break
- elif odd_or_even == "even":
- if len(even_elements) < 1:
- print("No matches")
- else:
- min_even = min(even_elements)
- for i in range(len(array) - 1, -1, -1):
- if array[i] == min_even:
- print(i)
- break
- def first_func(array, command_count, odd_or_even):
- if command_count > len(array) or command_count < 0:
- print("Invalid count")
- else:
- if odd_or_even == "even":
- first_even = []
- for element in array:
- if element % 2 == 0:
- first_even.append(element)
- if len(first_even) == command_count:
- break
- print(first_even)
- elif odd_or_even == "odd":
- first_odd = []
- for element in array:
- if element % 2 != 0:
- first_odd.append(element)
- if len(first_odd) == command_count:
- break
- print(first_odd)
- def last_func(array, command_count, odd_or_even):
- if command_count > len(array) or command_count < 0:
- print("Invalid count")
- else:
- if odd_or_even == "even":
- all_even = []
- last_even = []
- for element in array:
- if element % 2 == 0:
- all_even.append(element)
- if len(all_even) > command_count:
- count = command_count
- for i in range(1, command_count + 1):
- last_even.append(all_even[-count])
- count -= 1
- else:
- last_even = all_even
- print(last_even)
- elif odd_or_even == "odd":
- all_odd = []
- last_odd = []
- for element in array:
- if element % 2 != 0:
- all_odd.append(element)
- if len(all_odd) > command_count:
- count = command_count
- for i in range(1, command_count + 1):
- last_odd.append(all_odd[-count])
- count -= 1
- else:
- last_odd = all_odd
- print(last_odd)
- array = [int(num) for num in input().split(" ")]
- command = input()
- while command != "end":
- command_list = command.split(" ")
- command_action = command_list[0]
- if command_action == "exchange":
- exch_index = int(command_list[1])
- array = exchange_func(array, exch_index)
- elif command_action == "max":
- odd_or_even = command_list[1]
- max_func(array, odd_or_even)
- elif command_action == "min":
- odd_or_even = command_list[1]
- min_func(array, odd_or_even)
- elif command_action == "first":
- command_count = int(command_list[1])
- odd_or_even = command_list[2]
- first_func(array, command_count, odd_or_even)
- elif command_action == "last":
- command_count = int(command_list[1])
- odd_or_even = command_list[2]
- last_func(array, command_count, odd_or_even)
- command = input()
- print(array)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement