众所周知,a^b表示a的b次幂。例如:2^3=2*2*2=8。
一天,某只肥皂很无聊,于是在纸上写了形如a^b的式子玩。FL见到了,过来一起玩。突然,FL脑洞一开:我给你普及一个符号“^^”,叫做超级幂。a^^b表示a^(a^(a^(a^a^(...)))),共b个a。例如2^^3=2^(2^2)=2^4=16。那么你知道a^^b的个位数是多少么?
肥皂表示一脸懵逼,于是一旁看热闹的YDL出现了,随手写了一个式子:(a1^^b1)*(a2^^b2)*(a3^^b3)........(an^^bn),保证ai的个位数不等于2或4或8。说,请求出这个式子的个位数。
肥皂和FL两脸懵逼。现在FL只好想你求助了。
注意:a^^0=1,表示有0个a, 例如: 3^^0=1
一天,某只肥皂很无聊,于是在纸上写了形如a^b的式子玩。FL见到了,过来一起玩。突然,FL脑洞一开:我给你普及一个符号“^^”,叫做超级幂。a^^b表示a^(a^(a^(a^a^(...)))),共b个a。例如2^^3=2^(2^2)=2^4=16。那么你知道a^^b的个位数是多少么?
肥皂表示一脸懵逼,于是一旁看热闹的YDL出现了,随手写了一个式子:(a1^^b1)*(a2^^b2)*(a3^^b3)........(an^^bn),保证ai的个位数不等于2或4或8。说,请求出这个式子的个位数。
肥皂和FL两脸懵逼。现在FL只好想你求助了。
注意:a^^0=1,表示有0个a, 例如: 3^^0=1
题解:
有规律的,尾数不会出现2,4,8,而尾数是1,5.6.9就乘以尾数,只剩下3和7,自己推一推规律。
代码:
var
i,j,m,n,ans,x,y,z:longint;
begin
readln(n);
for i:=1 to n do
begin
ans:=1;
readln(m);
for j:=1 to m do
begin
read(x,y);
z:=x mod 10;
if y=0 then ans:=ans*1
else
if y=1 then
ans:=ans*x mod 10
else
if (z=5)or(z=6)or(z=9) then
ans:=ans*x mod 10
else
if z=3 then
if x mod 4=1 then
ans:=ans*3 mod 10
else
ans:=ans*7 mod 10
else
if z=7 then
if x mod 4=1 then
ans:=ans*7 mod 10
else
ans:=ans*3 mod 10;
end;
writeln(ans);
end;
end.
i,j,m,n,ans,x,y,z:longint;
begin
readln(n);
for i:=1 to n do
begin
ans:=1;
readln(m);
for j:=1 to m do
begin
read(x,y);
z:=x mod 10;
if y=0 then ans:=ans*1
else
if y=1 then
ans:=ans*x mod 10
else
if (z=5)or(z=6)or(z=9) then
ans:=ans*x mod 10
else
if z=3 then
if x mod 4=1 then
ans:=ans*3 mod 10
else
ans:=ans*7 mod 10
else
if z=7 then
if x mod 4=1 then
ans:=ans*7 mod 10
else
ans:=ans*3 mod 10;
end;
writeln(ans);
end;
end.