saidmrn 26 Denunciar post Postado Março 25, 2016 Olá pessoal,tudo bem ? Se puderem me tirar uma dúvida,comecei a treinar lá no SPOJ porém ele não aceita o meu código,o que pode estar errado ? as mesmas entradas do exempo estão gerando a mesma saída. <?PHP $input = trim(fgets(STDIN)); $numeros = array(); for ($i = 1; $i < $input; $i++) { if ($input % $i == 0) { array_push($numeros, $i); } } $resultado = 0; for ($i = 0; $i < count($numeros); $i++) { $resultado += $numeros[$i]; } echo $resultado; ?> O problema é este aqui: http://www.spoj.com/problems/DIVSUM/ Obrigado ! @edit Entendi o problema errado,então corrigi o código; Porém tá dando time limit exceeded,o que posso fazer para diminuir o tempo ? <?PHP $ntestes = trim(fgets(STDIN)); for($a = 0; $a < $ntestes; $a++) { $input = trim(fgets(STDIN)); if ($input >= 1 && $input <= 500000) { $numeros = array(); for ($i = 1; $i < $input; $i++) { if ($input % $i == 0) { array_push($numeros, $i); } } $resultado = 0; for ($i = 0; $i < count($numeros); $i++) { $resultado += $numeros[$i]; } echo $resultado; } } ?> Compartilhar este post Link para o post Compartilhar em outros sites