from time import clock import sys def matrics(n): global size matrix=[] for i in range(n): matrix.append([]) size=size+sys.getsizeof(matrix) return matrix def binarysearch(list,n): global size length=len(list) first=0 last=length-1 middle=int((first+last)/2) while list[middle]!=n and last>first: if n>list[middle]: first=middle+1 else: last=middle-1 middle=int((first+last)/2) size=size+sys.getsizeof(list)+sys.getsizeof(n)+sys.getsizeof(first)+sys.getsizeof(last)+sys.getsizeof(middle) if list[middle]==n: return 1,middle else: return 0,None start=clock() try: input=open('in11_10.txt','r+') output=open('out_33_11_10.txt','w') except IOError: print "The file does not exist" count=0 size=0 for row in input: if count==0: list=row.split(",") n=int(list[0]) matrix=matrics(n) elif count>=1 and count<=int(list[0]): list1=row.split(" ") for j in list1: matrix[count-1].append(int(j)) elif count==9: firstnumber=int(row) else: secondnumber=int(row) count=count+1 size=size+sys.getsizeof(matrix)+sys.getsizeof(list)+sys.getsizeof(firstnumber)+sys.getsizeof(secondnumber)+sys.getsizeof(count) for i in range(len(matrix)): a,index=binarysearch(matrix[i],firstnumber) if a==1 and index!=None: output.write(str(i)+","+str(index)+"\n") break else: continue if a!=1: output.write("Not Present\n") for i in range(len(matrix)): a,index=binarysearch(matrix[i],secondnumber) if a==1 and index!=None: output.write(str(i)+","+str(index)+"\n") break else: continue if a!=1: output.write("Not Present") output.write("\nTime Consumed is: "+str(clock()-start)+" Secs") output.write("\nMemory Used is: "+str(size)+" Bytes") output.close()