> #include <iostream>
>
> using namespace std;
>
> int main()
>
> {
> int ile;
>
> cin >> ile;
>
> int *tab1 = new int[ile];
> int *tab2 = new int[ile];
>
> for (int i = 1; i <= ile; i++)
> {
> cin >> tab1[i] >> tab2[i];
>
> }
>
> for (int i = 1; i <= ile; i++)
> {
> if (tab2[i] == 0) cout << 1;
> else
> {
> switch (tab1[i]%10)
> {
> case 0: cout << 0<<endl; break;
> case 1: cout << tab1[i]%10 << endl; break;
> case 2:
> switch (tab2[i]%4)
> {
> 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:
> switch (tab2[i] % 4)
> {
> 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:
> switch (tab2[i] % 2)
> {
> 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:
> switch (tab2[i] % 4)
> {
> 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:
> switch (tab2[i] % 4)
> {
> 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:
> switch (tab2[i] % 2)
> {
> case 0: cout << 1 << endl; break;
> case 1: cout << 9 << endl; break;
> } break;
>
> }
>
>
> }
>
>
>
> }
>
> system("pause");
> return 0;
Mam taki kod, wiem że długaśny, jednak liczy bez wielkich obliczeń i szybko, jednak SPOJ go nie przepuszcza. Gdzie jest błąd?