#include<iostream>
#include<string>
using namespace std;
int a[301], c[301], tmp[301];
long long b;
string s1, s2;
int N;
void strtoint(string s, int des[])
{
for (int i = 0; i < s.size(); i++) {
des[s.size() - i] = s[i] - '0';
}
}
void printArray(int arr[], int len)
{
for (int i = 1; i <= len; i++) {
cout << arr[i];
}
}
void printArray_reverse(int arr[], int len)
{
for (int i = len; i >= 1; i--) {
cout << arr[i];
}
}
int main()
{
cin >> N;
s1 = "2";
strtoint(s1, a);
int la = s1.size();
int jw = 0;
for (int i = 1; i <= N-1; i++) {
//低精度乘法
for (int j = 1; j <= la; j++) {
a[j] = a[j] * 2 + jw;
jw = a[j] / 10; //进位
a[j] = a[j] % 10;//留10
//如果最后一位成功进位,则长度加1
if (jw != 0 && j == la) {
la++;
}
}
}
printArray_reverse(a, la);
return 0;
system("pause");
}