天天看点

HDOJ 1097 A hard puzzle(规律)A hard puzzle

A hard puzzle

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 34599    Accepted Submission(s): 12420

Problem Description lcy gives a hard puzzle to feng5166,lwg,JGShining and Ignatius: gave a and b,how to know the a^b.everybody objects to this BT problem,so lcy makes the problem easier than begin.

this puzzle describes that: gave a and b,how to know the a^b's the last digit number.But everybody is too lazy to slove this problem,so they remit to you who is wise.

Input There are mutiple test cases. Each test cases consists of two numbers a and b(0<a,b<=2^30)

Output For each test case, you should output the a^b's last digit number.

Sample Input

7 66
8 800
        

Sample Output

9
6
        

Author eddy  

Recommend JGShining

虽然此题很水,但我还是WA到刷屏,一开始是没有想到  n^0  的情况,后来还是不对,我就看了看别人的代码,把我的数组法也改了,依然不对,最后在开头加上了a%=10,AC了。。。数组法时间和空间都比较大,还是用这个好

#include<stdio.h>
int main(){
    int a,b,sum,i;
    while(~scanf("%d%d",&a,&b)){
        b%=4;  a%=10;//就是它
        if(b==0) b=4;
        sum=1;
        for(i=1;i<=b;i++)
            sum*=a;
        printf("%d\n",sum%10);
    }
    return 0;
}