uses crt;
var g,i,n,d,q,max,min:longint; a,l,r,k:array[1..10000000]of longint;
function tich(a:longint):longint;
var t:longint;
begin
t:=1;
repeat
if a mod 10<>0 then t:=t*(a mod 10);
a:=a div 10;
until a=0;
exit(t);
end;
begin
clrscr;
readln(q);
min:=1000000;
for g:=1 to q do
begin
readln(l[g],r[g],k[g]);
if r[g]>max then
max:=r[g];
if l[g]<min then
min:=l[g];
end;
for i:=min to max do
begin
a[i]:=i;
while a[i]>9 do
a[i]:=tich(a[i]);
end;
for g:=1 to q do
begin
d:=0;
//writeln(l[g],' ',r[g],' ',k[g]);
for i:=l[g] to r[g] do if a[i]=k[g] then inc(d);
writeln(d);
end;
end.