#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int N[100],L,f,i,j,t,F[1000000];
int c(const void *a,const void *b)
{
	return f?*(char*)a-*(char*)b:*(char*)b-*(char*)a;
}
int main()
{
	for(;scanf("%d%d",&N[0],&L),L;)
	{
		memset(F,0,sizeof(F));
		F[N[0]]=1;
		for(i=0;;i++)
		{
			char m[9]={0},M[9]={0};
			itoa(N[i],m,10);
			for(j=0;j<L;j++)m[j]=!m[j]?'0':m[j];
			strcpy(M,m);
			f=0;qsort(M,L,sizeof(char),c);
			f=1;qsort(m,L,sizeof(char),c);
			N[i+1]=atoi(M)-atoi(m);
			if(F[N[i+1]]==1)break;
			else F[N[i+1]]=1;
		}
		for(j=0;N[j]!=N[i+1];j++);
		printf("%d %d %d\n",j,N[j],i-j+1);
	}
	return 0;
}