int main()
{
int number[50];
int flag[50];
int i = 0,t = 0;
int n;
int capital = 0;
scanf("%d", &n);
for (i = 0; i < 50; i++) //初始化数组
{
number[i] = 0;
flag[i] = 0;
}
number[49] = 1;
for (t = 1; t <= n; t++) //每次t循环乘以一次2
{
for (i = 49; i >= 0; i--) //检验数组每一位,先每一位乘以2,再判断是否大于10
{
if (number[i] * 2 >= 10)
{
flag[i] = 1;
}
number[i] = (number[i] * 2) % 10;
}
//进位
for (i = 49; i >= 0; i--)
{
if (flag[i] == 1)
{
number[i - 1] += 1;
flag[i] = 0;
}
}
}
//搜查最后一位
for (capital = 0; capital <= 49; capital++)
{
if (number[capital] != 0) //这一位是结果的首字符
break;
}
//打印
for (i = capital; i <= 49; i++)
{
printf("%d", number[i]);
}
return 0;
}