for f in range(0,n):
        ini = time.time()                    
        for t in range(0,fator_de_teste_cubico):
            a = algoritmo_cubico(l[0:f])
        fim = time.time()
        tempo_cubico.append((fim-ini)/fator_de_teste_cubico)
        print f+1, tempo_cubico[f]

print ""
# Medição do tempo de resposta do algoritmo quadratico
print "Tempo de Execucao Algoritmo Quadratico"
fator_de_teste_quadratico = m * 100
if n == 0:
    ini = time.time()
    for t in range(0,fator_de_teste_quadratico):
        a = algoritmo_quadratico(l)
    fim = time.time()
    tempo_quadratico.append((fim-ini)/fator_de_teste_quadratico)
    print n, tempo_quadratico[n]
else:
    for f in range(0,n):
        ini = time.time()                    
        for t in range(0,fator_de_teste_quadratico):
            a = algoritmo_quadratico(l[0:f])
        fim = time.time()
        tempo_quadratico.append((fim-ini)/fator_de_teste_quadratico)
        print f+1, tempo_quadratico[f]
print ""
# Medição do tempo de resposta do algoritmo divisão e conquista
print "Tempo de Execucao Algoritmo Divisao e Conquista"
fator_de_teste_div_conq = m * 100
def test_maior_soma_lista_com_elementos_positivos_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([1,1,1,1,1,1,1,1]),(8))
def test_maior_soma_lista_maior_soma_na_metade_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([-1,-1,-1,-1,1,1,1,1,1,1,1,1,-1,-1,-1,-1]),(8))
def test_maior_soma_lista_com_1_elemento_positivo_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([1]),(1))
def test_maior_soma_lista_com_elementos_negativos_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([-1,-1,-2]),(0))
def test_maior_soma_lista_com_2_elementos_zero_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([0,0]),(0))
def test_maior_soma_lista_vazia_algoritmo_quadratico():
    assert_equals(algoritmo_quadratico([]),(0))
    l = gerador_de_listas(n[h])

    # Medição do tempo de resposta do algoritmo cubico
    fator_de_teste_cubico = m
    ini = time.time()
    for v in range(0, fator_de_teste_cubico):
        a = algoritmo_cubico(l)
    fim = time.time()
    tempo_cubico.append((fim - ini) / fator_de_teste_cubico)
    print "Cub", n[h], tempo_cubico[h]

    # Medição do tempo de resposta do algoritmo quadratico
    fator_de_teste_quadratico = m * 10
    ini = time.time()
    for v in range(0, fator_de_teste_quadratico):
        a = algoritmo_quadratico(l)
    fim = time.time()
    tempo_quadratico.append((fim - ini) / fator_de_teste_quadratico)
    print "Qua", n[h], tempo_quadratico[h]

    # Medição do tempo de resposta do algoritmo divisao e conquista
    fator_de_teste_div_conq = m * 10
    ini = time.time()
    for v in range(0, fator_de_teste_div_conq):
        a = lista_entrada(l)
    fim = time.time()
    tempo_div_conq.append((fim - ini) / fator_de_teste_div_conq)
    print "Div", n[h], tempo_div_conq[h]

    # Medição do tempo de resposta do algoritmo linear
    fator_de_teste_linear = m * 1000