import sys from time import clock class start_list: def __init__(self): self.head=None self.tail=None def insert(self,num): if self.head==None: self.head=self.tail=make_node(num) self.head.next=self.head self.head.previous=self.tail else: self.tail.next=make_node(num) self.tail.next.previous=self.tail self.tail=self.tail.next self.tail.next=self.head self.head.previous=self.tail def delete(self,num): p1=self.head p2=None for i in range (1,num+1): p2=p1 p1=p1.next p2.next=p1.next p1.next.previous=p2 def prin(self): node=self.head count=0 while node!=self.tail: output.write(str(node.num)+" ") node=node.next count+=1 output.write(str(node.num)) output.write(" Size of list is "+str(count+1)) class make_node: def __init__(self,num): self.num=num self.previous=None self.next=None input=open("in9_6.txt","r") output=open("out_26_9_6.txt","w") start=clock() m,n=input.readline().split(",") input.readline() list1=input.readline().split(",") input.readline() list2=input.readline().split(",") l1=start_list() memory=0 for i in list1: l1.insert(i) for j in list2: l1.delete(int(j)) output.write("List contents at the end of program are \n") l1.prin() elapsed=clock()-start memory=sys.getsizeof(list1)+sys.getsizeof(m)+sys.getsizeof(n)+sys.getsizeof(list2) output.write("\n"+" Number of operations are "+str(int(m)+int(n))+"\n Time consumed is "+str(elapsed)+" secs"+"\n Memory consumed is "+str(memory)+" bytes") input.close() output.close()