您的位置:首页 > 其它

[水题]杭电1097 A hard puzzle

2016-02-15 14:34 357 查看
http://acm.hdu.edu.cn/showproblem.php?pid=1097

开始不小心,写错了点

直接贴代码

#include <stdio.h>
int main(void)
{
int a,b,c;
int i,flag;
while (~scanf("%d %d",&a,&b))
{
for(;;)
{
if (a<10)
break;
else if (a>10)
a=a%10;
else
a=0;
}
flag=a;
b=b%4;
b=b+4; //考虑到等于零的情况
for(i=0;i<b-1;i++)
{
a=flag*a;
}

for(;;)
{
if (a<10)
break;
else if (a>10)
a=a%10;
else
a=0;
}
printf("%d\n",a);
}
return 0;
}


另附上其他人的代码供学习用

#include<stdio.h>
int main()
{
int a,n,r,l;
while(scanf("%d %d",&a,&n)!=EOF)
{
r=1;
l=a;
for(;;)
{
if((n&1)!= 0)
{
r*=l;
r%=10;
}
n>>=1;
if(n==0)break;
l*=l;
l%=10;
}
printf("%d\n",r);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: