SPOJ przekroczono limit czasu

SPOJ przekroczono limit czasu
PS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 5
0

Witam, mam mały problem z malutkim programem mianowicie na SPOJu podczas testu przekracza limit czasu. Mógłby ktoś pomóc??? Oto link do zadania https://pl.spoj.com/problems/PA05_POT/

Kopiuj
#include<iostream>
using namespace std;
int main()
{
    int a,b,ile,iloczyn=1;


    cin>>ile;
    cout<<endl;
    for(int i=1;i<=ile;i++)
    {
        cin>>a>>b;
        for(int i=1;i<=b;i++)
        {
            iloczyn=iloczyn*a;
        }

        cout<<iloczyn%10;
        iloczyn=1;
    }


return 0;
}


KR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2518
1
  1. cout << endl; jest prawie na pewno niepotrzebne
  2. max b to miliard, petla jest na to za wolna
  3. masz tylko policzyc ostatnia cyfre, nie musisz nigdy znac wyniku

Spoiler alert
Moje rozwiazanie z 2008 w Pascalu: https://ideone.com/EAjUwn

hit02
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kernel
  • Postów: 90
1

Pomyśl o tym, jak zmienia się ostatnia cyfra wyniku, przy coraz wyższych liczbach na wejściu

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.