| 
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -6,6 +6,13 @@ Jeffery Russell | 
															
														
														
													
														
															
																 | 
																 | 
																""" | 
																 | 
																 | 
																""" | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																def generateMinOrdering(C, i, j): | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    if i == j: | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        return str(i) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    return "(" + generateMinOrdering(C, i, C[i -1][j -1]) + generateMinOrdering(C, C[i -1][ j -1] +1, j) + ")" | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																def minMul(S): | 
																 | 
																 | 
																def minMul(S): | 
															
														
														
													
														
															
																 | 
																 | 
																    """ | 
																 | 
																 | 
																    """ | 
															
														
														
													
														
															
																 | 
																 | 
																    Simple function to print the matrixes used in | 
																 | 
																 | 
																    Simple function to print the matrixes used in | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -41,7 +48,10 @@ def minMul(S): | 
															
														
														
													
														
															
																 | 
																 | 
																    for i in range(0, n): | 
																 | 
																 | 
																    for i in range(0, n): | 
															
														
														
													
														
															
																 | 
																 | 
																        for y in range(0, n): | 
																 | 
																 | 
																        for y in range(0, n): | 
															
														
														
													
														
															
																 | 
																 | 
																            print(str(c[i][y]) + " ", end =" ") | 
																 | 
																 | 
																            print(str(c[i][y]) + " ", end =" ") | 
															
														
														
													
														
															
																 | 
																 | 
																        print()     | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        print() | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																    print(generateMinOrdering(c, 1, len(S))) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																""" | 
																 | 
																 | 
																""" | 
															
														
														
													
												
													
														
															
																| 
																	
																	
																	
																		
																			
																		
																	
																 | 
																@ -49,7 +59,8 @@ Makes sure that other programs don't execute the main | 
															
														
														
													
														
															
																 | 
																 | 
																""" | 
																 | 
																 | 
																""" | 
															
														
														
													
														
															
																 | 
																 | 
																if __name__ == '__main__': | 
																 | 
																 | 
																if __name__ == '__main__': | 
															
														
														
													
														
															
																 | 
																 | 
																    try: | 
																 | 
																 | 
																    try: | 
															
														
														
													
														
															
																 | 
																 | 
																        minMul([(10,100),(100, 5),(5, 50)]) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																        #minMul([(5,10),(10,3),(3,12), (12,5), (5,50), (50,6)]) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        #minMul([(10,100),(100, 5),(5, 50)]) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        minMul([(5,10),(10,3),(3,12), (12,5), (5,50), (50,6)]) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																        #minMul([(30,35),(35,15),(15,5), (5,10), (10,20), (20,25)]) | 
															
														
														
													
														
															
																 | 
																 | 
																    except KeyboardInterrupt: | 
																 | 
																 | 
																    except KeyboardInterrupt: | 
															
														
														
													
														
															
																 | 
																 | 
																        exit() | 
																 | 
																 | 
																        exit() |