Pagini recente » Cod sursa (job #1614638) | Cod sursa (job #1381) | Cod sursa (job #1298231) | Cod sursa (job #2235942) | Cod sursa (job #3135614)
def insert_element(zeap, x):
zeap.add(x)
def delete_element(zeap, x):
if x in zeap:
zeap.remove(x)
else:
return -1
def search_element(zeap, x):
return 1 if x in zeap else 0
def max_difference(zeap):
if len(zeap) < 2:
return -1
return max(zeap) - min(zeap)
def min_difference(zeap):
if len(zeap) < 2:
return -1
return min(b - a for a, b in zip(sorted(zeap), sorted(zeap)[1:]))
zeap = set()
output = []
with open("zeap.in", "r") as input_file:
for line in input_file:
operation, *args = line.strip().split()
if operation == "I":
insert_element(zeap, int(args[0]))
elif operation == "S":
result = delete_element(zeap, int(args[0]))
if result is not None:
output.append(str(result))
elif operation == "C":
output.append(str(search_element(zeap, int(args[0]))))
elif operation == "MAX":
output.append(str(max_difference(zeap)))
elif operation == "MIN":
output.append(str(min_difference(zeap)))
with open("zeap.out", "w") as output_file:
output_file.write("\n".join(output))