Witam: Mam taki kodzik:
#include<iostream>
#include<cstdlib>
#include<string>
#include <iomanip>
using namespace std;
int main()
{
int liczba,suma=0,ile;
cin>>ile;
while(ile--)
{
cin>>liczba;
for(int i=1;i<=liczba;i++)
{
if(liczba%i==0)
suma+=i;
}
cout<<suma<<endl;
suma=0;
}
return 0;
}
a tu jest zadanko:
Dla zadanej liczby naturalnej należącej do przedziału [1..1000000] wyświetl sumę jej dzielników.
Input
Pierwsza linia określa ilość zestawów danych.
Każdy zestaw danych składa się z jednej liczby naturalnej.
Output
Dla każdego zestawu danych jedna liczba będąca sumą dzielników danej liczby.
Moj program ogolnie działa, ale pokazuje mi "przekroczono limit czasu"
(0.282s<-- limit czasu). Ma ktos moze pomysl jak zoptymalizować ten kod? Moze robie cos nie tak, cos niepotrzebnie, cos zle licze, jakies rady ? Szukalem innych sposobow, ale nic nie wpadlo mi wiecej do glowy, wujek tez nie pomogl ;c
I małe pytanko: gdzie sprawdzic czas wykonania programu ? Korzystam z codeblocksa.