Witam ma ktoś pomysł dlaczego SPOJ nie przyjmuje mi kodu i wyświetla "Błędna odpowiedź"
Oto treść zadania:
Dla danych dwóch liczb naturalnych a i b, wyznaczyć ostatnią cyfrę liczby ab.
Zadanie
Napisz program, który:
- wczyta ze standardowego wejścia: podstawę a oraz wykładnik b,
- wyznaczy ostatnią cyfrę liczby ab,
- wypisze wynik na standardowe wyjście.
Wejście
W pierwszej linii wejścia znajduje się jedna liczba całkowia D (1≤D≤10), oznaczjąca liczbę przypadków do rozważenia. Opis każdego przypadku podany jest w jednym wierszu, zawierającym dwie liczby naturalne a i b oddzielone pojedynczym odstępem (spacją), takie, że (1 ≤ a,b ≤ 1 000 000 000).
Wyjście
Dla każdego przypadku z wejścia Twój program powinien wypisać (w osobnej linii dla każdego przypadku z wejścia) cyfrę jedności liczby abzapisanej dziesiętnie.
Przykład
Dla danych wejściowych:
2
2 3
3 3
poprawną odpowiedzią jest:
8
7
A to mój kod:
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n;
cin>>n;
for(int i=0; i<n; i++)
{
long long a,b,c=0;
string napis;
cin>>a>>b;
if (a==0||b==0)
{
cout<<1<<endl;
continue;
}
if (a==1)
{
cout<<b%10<<endl;
continue;
}
if (a>10)
a%=10;
switch (a)
{
case 1:
cout<<1<<endl;
break;
case 2:
b%=4;
switch(b)
{
case 0: cout<<6<<endl; break;
case 1: cout<<2<<endl; break;
case 2: cout<<4<<endl; break;
case 3: cout<<8<<endl; break;
}
break;
case 3:
b%=4;
switch(b)
{
case 0: cout<<1<<endl; break;
case 1: cout<<3<<endl; break;
case 2: cout<<9<<endl; break;
case 3: cout<<7<<endl; break;
}
break;
case 4:
b%=2;
switch(b)
{
case 0: cout<<6<<endl; break;
case 1: cout<<4<<endl; break;
}
break;
case 5:
cout<<5<<endl;
break;
case 6:
cout<<6<<endl;
break;
case 7:
b%=4;
switch(b)
{
case 0: cout<<1<<endl; break;
case 1: cout<<7<<endl; break;
case 2: cout<<9<<endl; break;
case 3: cout<<3<<endl; break;
}
break;
case 8:
b%=4;
switch(b)
{
case 0: cout<<6<<endl; break;
case 1: cout<<8<<endl; break;
case 2: cout<<4<<endl; break;
case 3: cout<<2<<endl; break;
}
break;
case 9:
b%=2;
switch(b)
{
case 0: cout<<1<<endl; break;
case 1: cout<<9<<endl; break;
}
break;
case 0:
cout<<0<<endl;
break;
}
}
return 0;
}