Problem Description
Given a positive integer N, you should output the most right digit of N^N.
|
Input
The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.
Each test case contains a single positive integer N(1<=N<=1,000,000,000). |
Output
For each test case, you should output the rightmost digit of N^N.
|
Sample Input
2 3 4 |
Sample Output
7 6 |
<code>
#include<stdio.h>
void main()
{ int i,N,j;
scanf("%d",&i);
while(i--)
{ scanf("%d",&N);
switch(N%10)
{ case 0: j=0; break;
case 1: j=1; break;
case 2: switch(N%4)
{ case 0: j=6;break;
case 2: j=4;break;
} break;
case 3: switch(N%4)
{case 0: j=1;break;
case 1: j=3;break;
case 2: j=9;break;
case 3: j=7;break;
} break;
case 4: j=6;break;
case 5: j=5;break;
case 6: j=6;break;
case 7: switch(N%4)
{
case 1: j=7;break;
case 3: j=3;break;
}break;
case 8: switch(N%4)
{
case 2: j=4;break;
case 0: j=6;break;
}break;
case 9: j=9;break;
}
printf("%d\n",j);
}
}