/*
Description
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
Input
一个不大于5位的数字
Output
三行第一行 位数第二行 用空格分开的每个数字,注意最后一个数字后没有空格第三行 按逆序输出这个数
Sample Input
12345
Sample Output
5
1 2 3 4 5
54321
*/
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n,a,b,c,d,e;
cin>>n;
if(n>=10000)
{
a=n/10000;
b=(n-a*10000)/1000;
c=(n-a*10000-b*1000)/100;
d=(n-a*10000-b*1000-c*100)/10;
e=n%10;
cout<<5<<endl<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<endl;
cout<<e<<d<<c<<b<<a<<endl;
}
else
{
if(n>=1000)
{
a=n/1000;
b=(n=a*1000)/100;
c=(n-a*1000-b*100)/10;
d=n%10;
cout<<4<<endl<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<endl;
cout<<d<<c<<b<<a<<endl;
}
else
{
if(n>=100)
{
a=n/100;
b=(n-a*100)/10;
c=n%10;
cout<<3<<endl<<a<<" "<<b<<" "<<c<<endl;
cout<<c<<b<<a<<endl;
}
else
{
if(n>=10)
{
a=n/10;
b=n%10;
cout<<2<<endl<<a<<" "<<b<<endl;
cout<<b<<a<<endl;
}
else
{
cout<<1<<endl<<n<<endl;
cout<<n<<endl;
}
}
}
}
return 0;
}