/*
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
// 3472. 가장 가까운 두 점의 거리 (Large)
typedef struct {
int x, y;
double originDistance;
} Point;
void mergeSort(Point *arr, int start, int end) {
int middle, leftArrIndex, rightArrIndex, i;
Point *sortedArr;
if (start >= end) {
return;
}
middle = (start + end) / 2;
mergeSort(arr, start, middle);
mergeSort(arr, middle + 1, end);
sortedArr = calloc(end - start + 1, sizeof(Point));
leftArrIndex = start;
rightArrIndex = middle + 1;
for (i = 0; leftArrIndex <= middle && rightArrIndex <= end; i++) {
if (arr[leftArrIndex].originDistance > arr[rightArrIndex].originDistance) {
sortedArr[i] = arr[rightArrIndex++];
} else {
sortedArr[i] = arr[leftArrIndex++];
}
}
for (; leftArrIndex <= middle; sortedArr[i++] = arr[leftArrIndex++]) {}
for (; rightArrIndex <= end; sortedArr[i++] = arr[rightArrIndex++]) {}
for (i = end - start; i >= 0; i--) {
arr[start + i] = sortedArr[i];
}
free(sortedArr);
}
int main() {
int n, i, j, k;
double distance;
double minDistance = 1000000;
Point *points;
scanf("%d", &n);
points = calloc(n, sizeof(Point));
for (i = 0; i < n; i++) {
scanf("%d %d", &points[i].x, &points[i].y);
points[i].originDistance = sqrt(points[i].x * points[i].x + points[i].y * points[i].y);
}
mergeSort(points, 0, n - 1);
for (i = 0; i < n; i++) {
for (j = 1; j > -2; j -= 2) {
for (k = i + j; k != (j + 1) / 2 * (n + 1) - 1; k += j) {
if (abs(points[i].originDistance - points[k].originDistance) >= minDistance) {
break;
}
distance = sqrt(pow(points[k].x - points[i].x, 2) + pow(points[k].y - points[i].y, 2));
if (distance < minDistance) {
minDistance = distance;
}
}
}
}
printf("%.1lf", minDistance);
return 0;
}
*/
#include <stdio.h>
// 4018. 팰린드롬 수 찾기
long long reverse(long long num) {
long long result = 0;
while (num > 0) {
result *= 10;
result += num % 10;
num /= 10;
}
return result;
}
int main() {
long long n, reversed;
int additionCount = 0;
scanf("%lld", &n);
reversed = reverse(n);
for (; n != reversed; additionCount++) {
n += reversed;
reversed = reverse(n);
}
printf("%d %lld", additionCount, n);
return 0;
}