n=int(eval(input()))

ans=float('inf')

for i in range(1,int(n**0.5)+1):

    if n%i ==0:

        x=len(str(i))

        y=len(str(n//i))

        z=max(x,y)

    if ans > z:

        ans=z

print(ans)
n=int(eval(input()))

ans=float('inf')

for i in range(1,int(n**0.5)+1):

    if n%i == 0:

        x=len(str(i))

        y=len(str(n//i))

        z=max(x,y)

        ans=min(z,ans)

print(ans)

n = int(eval(input()))
ans = float("inf")
for i in range(1, int(n**0.5) + 1):
    if n % i == 0:
        x = len(str(i))
        y = len(str(n // i))
        z = max(x, y)
    if ans > z:
        ans = z
print(ans)

n = int(eval(input()))
ans = float("inf")
for i in range(1, int(n**0.5) + 1):
    if n % i == 0:
        x = len(str(i))
        y = len(str(n // i))
        z = max(x, y)
        ans = min(z, ans)
print(ans)

-    if ans > z: -        ans = z +        ans = min(z, ans)